В девяностые годы я написал на ассемблере игру "Морской бой" и игру в подкидного дурака. Листинги обеих программ заняли целую канцелярскую папку с жёсткой обложкой.
Исходники пропали куда-то во время очередного переезда. Недаром переезд приравнивают к пожару.
Ещё была игра Xonix, где инициализировался защищённый режим с дескрипторной таблицей и использовалась многозадачность: на передвижение каждого шарика и курсора была отдельная задача. Отдельно шёл счёт времени, потому что переключение задач производилось по прерыванию таймера, а потому системное время не обновлялось. Получалось, что при завершении программы часы отставали на время, потраченное на игру. Поэтому была специальная длиннющая переменная, где учитывались "тики", которые потом переводились во временной интервал, а этот интервал потом прибавлялся к остановившемуся системному времени.
Ещё был резидентный калькулятор, использовавший сопроцессор для операций с плавающей точкой.
Дела очень давно минувших дней, предания седой старины глубокой...
Совсем забыл. Когда я только приехал в страну и искал любые возможности заработка, то некоторое время работал в проекте создания какого-то устройства. Главным там был процессор 80386, который управлял некоей периферией. Никакой операционной системы не предусматривалось, да она и не нужна была. Общение с железом происходило на уровне команд IN и OUT, из которых состояла половина firmware, если его можно было так назвать.
Потом я понял, что программирование - это не моё, перешёл в админы. А через какое-то время компьютеры мне надоели как таковые, на чём я с IT и попрощался.
no subject
Date: 2024-11-18 21:27 (UTC)no subject
Date: 2024-11-18 21:55 (UTC)no subject
Date: 2024-11-18 21:50 (UTC)no subject
Date: 2024-11-18 22:42 (UTC)no subject
Date: 2024-11-18 23:19 (UTC)Ещё была игра Xonix, где инициализировался защищённый режим с дескрипторной таблицей и использовалась многозадачность: на передвижение каждого шарика и курсора была отдельная задача. Отдельно шёл счёт времени, потому что переключение задач производилось по прерыванию таймера, а потому системное время не обновлялось. Получалось, что при завершении программы часы отставали на время, потраченное на игру. Поэтому была специальная длиннющая переменная, где учитывались "тики", которые потом переводились во временной интервал, а этот интервал потом прибавлялся к остановившемуся системному времени.
Ещё был резидентный калькулятор, использовавший сопроцессор для операций с плавающей точкой.
Дела очень давно минувших дней, предания седой старины глубокой...
no subject
Date: 2024-11-19 10:06 (UTC)Потом я понял, что программирование - это не моё, перешёл в админы. А через какое-то время компьютеры мне надоели как таковые, на чём я с IT и попрощался.