Мой первый комп был ZX Spectrum 48k. 48 килобайт оперативной памяти. Из них 7 кБ экранной и ещё около 1 кБ служебной. Под сами программы оставалось 40 кБ. Сначала я писал проги на Бейсике. Потом допёр, что на ассемблере работает быстрей и стал вставлять куски кода на нём. В итоге я пришёл к использованию 30% Бейсика и 70% Ассемблера. Как-то я написал стрелочку-указатель, управляемую джойстиком (как сейчас в винде). На ассемблере! С нуля! Никаких слоёв в Спектруме нет, нужно запоминать, что нарисовано на экране, поверх рисовать стрелку, опрашивать джойстик, восстанавливать нарисованное под стрелкой, менять координаты X/Y на 1/2/4 пикселя в зависимости от времени нажатого джойстика, опять запоминать и рисовать 50 раз в секунду, при этом попадать в частоту кадров монитора, чтоб не мерцала… Три месяца я это писал и переписывал! Весь код в итоге занял около 1500 байт.
Мой первый комп был ZX Spectrum 48k. 48 килобайт оперативной памяти. Из них 7 кБ экранной и ещё около 1 кБ служебной. Под сами программы оставалось 40 кБ. Сначала я писал проги на Бейсике. Потом допёр, что на ассемблере работает быстрей и стал вставлять куски кода на нём. В итоге я пришёл к использованию 30% Бейсика и 70% Ассемблера. Как-то я написал стрелочку-указатель, управляемую джойстиком (как сейчас в винде). На ассемблере! С нуля! Никаких слоёв в Спектруме нет, нужно запоминать, что нарисовано на экране, поверх рисовать стрелку, опрашивать джойстик, восстанавливать нарисованное под стрелкой, менять координаты X/Y на 1/2/4 пикселя в зависимости от времени нажатого джойстика, опять запоминать и рисовать 50 раз в секунду, при этом попадать в частоту кадров монитора, чтоб не мерцала… Три месяца я это писал и переписывал! Весь код в итоге занял около 1500 байт.