Я пытаюсь сделать IO с помощью stdio.h
на Commodore 64, но у меня даже с следующей программой:CC65: Четыре строки плохо, две линии хорошо?
#include <stdio.h>
void main(void)
{
printf("Foo\n");
printf("Bar\n");
/* printf("Foo\n"); */
/* printf("Bar\n"); */
}
Проблема заключается в том, если я оставлю 2 printf
s раскомментирована, то он работает как ожидается. Если я раскомментирую все четыре, то это не сработает: если я RUN
, я просто вижу, что линии мигают до того, как экран сбрасывается, показывая READY.
на пустом экране.
Если у меня есть три, то он не работает в первый раз (мигает опустошить READY.
экран), но если я RUN
его снова, то он работает ...
Я хотел бы добавить, что я имею только тестировал это на VICE, а не на реальном C64.
Можете ли вы уточнить, что вы подразумеваете под «не работает вообще»? – Devolus
Что произойдет, если вы измените тип возврата main() на int и вернете 0 в конце? – Lazarus
@Devolus: Как я писал, 'RUN'ning приводит к тому, что показанные строки быстро заменяются пустым экраном с только одним« READY.' в верхнем левом углу. Это похоже на то, что после притяжения строк он также быстро выполнил инструкцию clearscreen. – Cactus