Как стать автором
Обновить

Комментарии 22

Не вижу смысла в таком олдскуле, если ему всё равно для запуска нужен минимум 386-й.
Вижу, что меня не совсем поняли, поясню: человек поставил себе задачу (COM-файл, 16-битный 8086-ассемблер), а инструмент для неё не подошёл. Вместо того, чтобы подобрать подходящий инструмент, он подогнал задачу под инструмент.
Начиная с вроде как 4.9.0 вместо -m32 можно писать -m16 и выкидывать .code16gcc, компилятор добавит сам где нужно.
Компилятор Digital Mars до сих пор имеет 16-разрядные DOS и OS/2-режимы сборки.
Первое, что очевидным образом приходит в голову — Open Watcom С.
А зачем такие извращения, что мешало в том же досбоксе запустить какой-нибудь Borland C?
Так не разделяются целевая и инструментальная платформа.

qview тогда уж открыть и фигачить сразу на асм'е

это же «иностранцы» — у него нет лицензии на борланд :)
А, точно! У меня даже мысли не возникло, что он мог быть платным

Borland (точнее, правопреемники) разрешают скачать Turbo C и Turbo C++ бесплатно: http://edn.embarcadero.com/article/20841, http://edn.embarcadero.com/article/21751


Правда на данной странице не нашел лицензии, но несколько раз упоминается слово "free", так что наверное можно использовать свободно.

These historical files are provided to the Borland community free of charge. They may be downloaded and used "as is" for personal use only. No developer support is provided. Each individual product contains copyright notices that are still in force.

Выделено мною. В общем только для персонального использования, без права распространения и т. п.

Когда я снова запустил игру, она продолжилась точно там, где остановилась

Напоминает очень полезную программку GO для DOS, размером… в 0 байт. Позволяла открыть предыдущее приложение без потери его состояния :)

А мне вспоминаются компьютеры Yamaha MSX, в которых иногда после перезагрузки сохранялось старое содержимое памяти. Я уже не помню, как именно это проявлялось. По-моему, например, после перезагрузки из встроенного Paint, можно было в программе на BASIC считать и показать последнюю редактируемую картинку. Иногда игры продолжались после перезагрузки.

Собственно, так и должно быть: у микросхем статической памяти нет сброса (чтобы не увеличивать размер ячеек), потому, если загрузчик память не очистил (а зачем бы ему это делать?), они и хранят состояние до перезагрузки.
У динамической памяти всё то же самое, явного сброса нет, только появляется ещё контроллер (либо программная регенерация) памяти.
Любопытно, а это вообще как?
COM файлы просто загружались по адресу 0х0100 и на него передавалось управление. При нулевой длине ничего не загружалось, а управление передавалось. Ну а при выходе из программы память не очищалась.

это что же должно быть в этой игре, чтобы она весила 10кб? эх… прошли те времена, когда шикарные демки (для DOS, COM-файл) умещались в 256 байт.

Были же соревнования ассемблерщиков, которые делали классные анимации ограничивая себя СОМ файлом.

в этой реализации sbrk всегда в минус дает крутить, что , наверно не правильно?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории