Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // sdcc -mz80 --no-std-crt0 --code-loc 0x8000 --data-loc 0xC000 main.c
- #include <stdint.h>
- // Аналог Z80_OUT через ассемблерную вставку
- #define PORT_OUT 0x01 // Произвольный порт для вывода
- /////////////////////////////////////////////////////////////////////////
- void delay(uint16_t ms) //
- {
- for (uint16_t i = 0; i < ms; i++)
- {
- for (uint16_t j = 0; j < 100; j++)
- {
- __asm__("nop"); // Задержка с помощью NOP
- }
- }
- }
- /////////////////////////////////////////////////////////////////////////
- void main() //
- {
- while (1)
- {
- __asm // Вывод 0x55 в порт PORT_OUT
- ld a, #0x55
- out (PORT_OUT), a
- __endasm;
- delay(1000);
- __asm // Вывод 0xAA в порт PORT_OUT
- ld a, #0xAA
- out (PORT_OUT), a
- __endasm;
- delay(1000);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement