Есть много интересных способов провести новогодние праздники, но поскольку я уже старенький — вместо классических алкогольного угара, ведра оливье и просмотра «Иронии судьбы» выбрал себе более редкое и необычное занятие.

Слева направо: Borland Turbo C 2.01 из 1989 года, FreeBSD 15 от 2025го и PC DOS 2.0 из 1983.
Слева направо: Borland Turbo C 2.01 из 1989 года, FreeBSD 15 от 2025го и PC DOS 2.0 из 1983.

Этой статьей продолжаются мои изыскания на тему винтажной разработки и на этот раз показываю почтенной публике как собрать и запустить программу на С для самого первого PC.

Того самого прародителя вашего домашнего компьютера, с которого началась эра PC-совместимых компьютеров.

Да, мы снова тревожим дух компьютерных предков, во славу науки.

IBM 5150

Процитирую википедию:

The IBM Personal Computer (model 5150, commonly known as the IBM PC) is the first microcomputer released in the IBM PC model line and the basis for the IBM PC compatible de facto standard.

Тут нечего добавлять от себя, поскольку все эти факты — часть мировой истории компьютерной индустрии, многократно описанные в книгах и статьях.

Так выглядит один из действующих образцов, доживших до наших дней:

Обратите внимание на версию DOS на экране.
Обратите внимание на версию DOS на экране.

C другого ракурса:

5.25' дисковод. Две штуки. Нижняя модель на самом деле 5160 - с жестким диском вместо флоппи.
5.25' дисковод. Две штуки. Нижняя модель на самом деле 5160 - с жестким диском вместо флоппи.

Вот тут можно найти еще фото, в том числе внутренностей этой замечательной машины. Интересное видео с процессом восстановления модели 5150:

Скажу сразу:

нет, я не застал эти компьютеры и никогда не видел оригинальный IBM PC

Моя история c ИТ началась сильно позже — в 90е, с PC-совместимого 286го в школе и списанного 386го, который стал моим первым домашним компьютером. Так что разработка для первого PC для меня точно такое же открытие как и для вас, дорогой читатель.

Теперь стоит рассказать про инструментарий разработки на компьютерах тех лет, который сильно отличается от современного:

Знакомые всем, кто учился в школе в 90е синие окошки.
Знакомые всем, кто учился в школе в 90е синие окошки.

Borland Turbo C

Одна из самых популярных и известных сред и средств (поскольку в составе был еще и одноименный компилятор) разработки на рубеже 80х-90х:

Turbo C is a discontinued integrated development environment (IDE) and compiler for the C programming language from Borland. First introduced in 1987, it was noted for its integrated development environment, small size, fast compile speed, comprehensive manuals and low price.

Собственно продукция фирмы Borland долгое время была эталоном того как должны выглядеть, распространяться и продаваться «программы для программистов».

Множество идей и подходов, реализованных Борландом были цинично украдены неоднократно воспроизводились в других средах разработки.

Продукты Borland сломали психику сильно повлияли на несколько поколений программистов по всему миру, а на просторах РФ с начала 90х и по середину «нулевых» практически любая разработка вообще подразумевала использование продукции этой компании в том или ином виде.

Хотя конечно речь идет не о C или C++ а о куда более известном в широких программистских кругах Borland Turbo Pascal и выросшим из него Delphi, ставшей крайне популярной в наших краях.

Что же касается моего опыта, к сожалению Borland Turbo C и более поздний Turbo C++ я не застал, начав погружение в разработку на С/C++ гораздо позже — с Microsoft Visual Studio 6.0 и уже под Windows.

Зато еще в 1996м году в обычной средней школе посреди сибирских пердей смог в полной мере насладиться другим продуктом фирмы Borland.

PC-DOS 1.0 в эмуляторе.
PC-DOS 1.0 в эмуляторе.

PC-DOS

Так вышло, что для первого продукта, предназначенного для обычных а не корпоративных пользователей — PC, в IBM было принято судьбоносное решение:

поручить разработку операционной системы для разрабатываемого персонального компьютера внешнему подрядчику — Microsoft.

Этот проект дал огромный толчок к развитию «мелкомягких» и заложил основу будущей платформы Wintel, гегемонию которой вы можете наблюдать и поныне, достаточно взглянуть под стол или на любимый ноутбук.

Почему так вышло это еще одна занимательная история, пересказывать которую в рамках статьи нет особого смысла ввиду ее широкой известности, но если вдруг не знаете — вот несколько интересных статей про те события.

Лишь отмечу, что как-то так появилась на свет эта новая операционная система — PC DOS:

86-DOS was rebranded IBM PC DOS 1.0 for its August 1981 release with the IBM PC.

Именно эту первую версию я хотел использовать для демонстрации в эмуляторе и запуска собранных программ, но довольно быстро столкнулся с особенностями разработки тех лет:

When developing the early DOS versions, there was no linker. The SCP ASM.COM assembler did not produce object files. It had a built-in locator and produced HEX files (text files) which were converted by HEX2BIN.COM into binary executable files. It is likely that IBM and Microsoft exchanged HEX files rather than binaries, and those were converted into binaries as required.

Переводя с технического английского на обыкновенный русский: это полный пэ.

Стало понятно, что не выйдет собрать приложение под первую версию PC-DOS используя Borland Turbo C, даже с использованием черной магии и колдовства чего-то такого:

tcc -c -ms main
tasm c0 /D__TINY__ /D__NOFLOAT /t/mx;
tasm setargv /D__TINY__ /t/mx;
tlink c0 main setargv /c/m,main 

Я честно пытался все это повторить, но увы — на первой версии PC DOS бинарник так и не запустился, зато на 2й и выше все заработало без всяких дополнительных извращений с ассемблером и линковщиком.

Заработало вообще все, включая FizzBuzz на C++ из предыдущей статьи:

Напомню, что этот FizzBuzz написан на современном C++ и собран в виде 16-битного EXE под DOS.
Напомню, что этот FizzBuzz написан на современном C++ и собран в виде 16-битного EXE под DOS.

Желание показать в статье Borland Turbo C «с синенькими панельками» возобладало над потребностью сборки «Hello, world!» любым возможным способом, вроде переписывания кода на ассемблер, на котором и шла разработка самой DOS.

«Нормальные герои всегда идут в обход» (ц)

Мы — нормальные герои, поэтому вот он, тот самый обход:

виртуально проапгрейдить эмулируемый IBM 5150, запустив на нем более современный PC DOS 2.х.

Апгрейд операционной системы было нормой даже для конца 80х, тем более что следующая выпущенная модель PC 5160 поставлялась как раз со второй версией PC DOS.

Теперь переходим к эмулятору.

Запущенный эмулятор PCE под Solaris 9 (!) на SPARC, в качестве демонстрации возможностей.
Запущенный эмулятор PCE под Solaris 9 (!) на SPARC, в качестве демонстрации возможностей.

Эмулятор PCE

Помимо ностальгии по Борланду и давно забытой ОС из 80х, хотелось познакомить широкую аудиторию с одним удивительным, но малоизвестным проектом:

PCE is a collection of microcomputer emulators.

Технически это не один а четыре разных эмулятора винтажных компьютеров 80х-90х, каждый из которых представляет интерес:

  • PCE/atarist is an Atari ST emulator. It emulates the various ST and Mega ST models.

  • PCE/ibmpc is an IBM PC 5150 emulator. It emulates an IBM PC 5150 or an IBM PC/XT 5160.

  • PCE/macplus is a classic Macintosh emulator. It emulates a Macintosh 128K, Macintosh 512k, Macintosh 512ke, Macintosh Plus, Macintosh SE or a Macintosh Classic.

  • PCE/rc759 is a Regnecentralen RC759 Piccoline emulator.

В рамках статьи мы будем использовать лишь эмулятор IBM PC 5150 — того самого первого PC, что не мешает посмотреть остальные, хотя-бы в виде готовых сборок.

Благо что там много чего интересного:

Уверен, о PC/IX большинство читателей узнало сегодня впервые.
Уверен, о PC/IX большинство читателей узнало сегодня впервые.

Ниже несколько скриншотов с примерами широко известных программ, запущенных в этом эмуляторе:

Microsoft Word 1.1a (VGA 640*480*16)
Microsoft Word 1.1a (VGA 640*480*16)
Deluxe Paint II (EGA 640*350*16)
Deluxe Paint II (EGA 640*350*16)
Adobe Illustrator 3.0.1
Adobe Illustrator 3.0.1
TOS 1.04 (640*200*4)
TOS 1.04 (640*200*4)

Окружение

Поскольку доступа к настоящему IBM 5150 у меня нет (да это намек владельцам винтажных компов — пишите, если хотите чтобы ваши питомцы приняли участие в новых статьях), придется в очередной раз эмулировать.

Cам процесс разработки будет происходить, как и в прошлый раз в куда более современном и быстром Dosbox, который не совсем эмулятор.

Что позволит обойти ряд проблем, связанных с пробросом файлов — Dosbox реализует прозрачную эмуляцию поверх реальной файловой системы хоста.

Dosbox известен и популярен, поэтому наверняка будет в вашей ОС, коль уж бинарные сборки есть даже для Windows.

Хостом, на котором будет работать весь этот цирк традиционно выступит FreeBSD 15.

Для доставки собранных приложений внутрь эмулятора IBM 5150 я как и в истории про Digital Mars буду использовать пакет mtools:

Mtools is a free software collection of utilities to allow a Unix operating system to manipulate files on an MS-DOS file system, typically a floppy disk or floppy disk image.[2]3]

Установка

Начнем процесс с самого замороченного в этой истории — с эмулятора PCE. Заморочек с ним целых две:

  • Во-первых, это редкий (но не невероятный) случай, когда помимо исходников эмулятора будет нужна еще и его готовая сборка, поскольку она содержит довольно сложную настройку эмулируемой машины и необходимые для запуска ROM-файлы.

  • Во-вторых, из-за истории с первой версией PC-DOS (см. выше), есть необходимость дополнительной правки конфига, для того чтобы подсунуть эмулятору образ дискеты с PC-DOS 2.x.

Ну и поскольку готовой сборки для FreeBSD конечно нет, собирать эмулятор опять придется самостоятельно, из исходников.

К сожалению автор эмулятора (Hampa Hug) свой проект немного запустил, перестав с 2013 года выпускать номерные версии и запрятав ссылку на свежие сборки:

13 лет выпускать снепшоты "текущей версии" это мощно.
13 лет выпускать снепшоты "текущей версии" это мощно.

Для статьи я использовал последнюю snapshot-версию от 2025 года, прямая ссылка на исходники и сборку машины 5150 под Windows.

Скачиваем архив, распаковываем и запускаем сборку:

wget http://www.hampa.ch/pub/pce/pre/pce-20250420-cc0c583c/pce-20250420-cc0c583c.tar.gz
tar xvf pce-20250420-cc0c583c.tar.gz
cd pce-20250420-cc0c583c
./configure --prefix=/opt/own/pce

Тут есть нюанс:

эмулятор не заработает «из коробки» — из каталога сборки, его будет необходимо обязательно установить с помощью вызова make install

Чтобы не ломать действующую систему (по-умолчанию все устанавливается в системный /usr) и был указан префикс /opt/own/pce скрипту configure.

Запускаем сборку, напомню что дело происходит на FreeBSD, где есть свой отдельный make, не совместимый с GNU Make, используемый в Linux, так что необходимо использовать команду gmake вместо make:

gmake
gmake install

После успешной сборки и установки, должны появиться вот такие бинарники:

pce-ibmpc мы и будем использовать далее.

Следующим шагом забираем готовую сборку PCE под Windows отсюда.

Напомню, что сборка нужна нам, поскольку содержит сложный конфигурационный файл с описанием эмулируемого железа и все необходимые ROM-файлы.

Шаги:

mkdir pc-5150
cd pc-5150
wget http://www.hampa.ch/pub/pce/pre/pce-20250420-cc0c583c/machines/pce-20250420-cc0c583c-ibm-pc-pcdos-1.00.zip
unzip pce-20250420-cc0c583c-ibm-pc-pcdos-1.00.zip 

Готовая сборка — только под Windows, поэтому скрипты запуска выглядят как BAT-файлы, их будет необходимо переделать для запуска в Linux/BSD.

Было:

cat run-cga.bat 
bin\pce-ibmpc.exe -v -c pce-5150.cfg -l pce.log -g cga -r

Стало:

/opt/own/pce/bin/pce-ibmpc -v -c pce-5150.cfg -l pce.log -g cga -r

Префикс /opt/own/pce — тот самый, который мы указывали скрипту configure при сборке эмулятора.

Скриптов запуска два, поскольку у первого PC было два варианта адаптеров для подключения монитора: CGA и MDA, разными скриптами эмулируемая система запускается с разными типами мониторов.

Для большего антуража я использовал CGA-версию.

Скан настоящей 5.25' дискеты, с PC-DOS 2.10
Скан настоящей 5.25' дискеты, с PC-DOS 2.10

Скачиваем архив с PC-DOS 2.10 вот отсюда, внутри будут отсканированные фото оригинальных дискет и два IMG-файла — образы дискет с PC-DOS.

Нам нужен только первый, копируем его в каталог cо сборкой эмулятора:

 cp Disk01.img pc-5150/data/images/

Следующим шагом надо указать в конфиге эмулируемой системы путь к образу дискеты с PC-DOS 2.10.

Открываем файл pce-ibmpc.inc в каталоге data, находим вот такой блок:

И вставляем путь к Disk01.img, закомментировав остальные варианты:

Путь относительный и рассчитывается от каталога, из которого происходит запуск эмулятора.

Отключение других вариантов нужно для того чтобы эмулятор не пытался переключиться на другие образы если не сможет прочитать указанный нами.

Если все сделано правильно, эмулятор загрузится с 2.10 версией PC-DOS:

Узрите историю!
Узрите историю!

Но это еще не все.

Нужно как-то пробрасывать файлы в эмулятор, чтобы их потом можно было прочитать и запустить, делать это мы будем с помощью утилиты из пакета mtools.

Создаем образ дискеты на 360 килобайт в каталоге pc-5150/data/images:

cd pc-5150/data/images
mformat -C -t 40 -h 2 -n 9 -i floppy360k.img

Создаем тестовый файл и копируем его внутрь образа:

echo "This is test!" > test.txt
mcopy -i floppy360k.img test.txt ::test.txt

Прописываем созданный образ дискеты в том же конфиге pce-ibmpc.inc но для второго флоппи-дисковода:

Должно получиться что-то такое:

Если все прошло успешно, будет доступен диск B:, перейдя на который можно увидеть созданный тестовый файл с данными:

Узрите, ибо грядет!
Узрите, ибо грядет!

Теперь, в полной мере насладившись столь винтажной системой, переходим ко второй части — к среде разработки из 80х.

Из тысяча девятьсот восмидесятых.

Borland Turbo C

На известном (в узких кругах) archive.org нашлась эпическая сборка «Borland Turbo C 2.01», в которой собраны все необходимые утилиты для разработки, документация и куча примеров исходного кода:

Нас интересует файл BorlandTurboC201-megapack.zip
Нас интересует файл BorlandTurboC201-megapack.zip

Причем все эти радости готовы к использованию в Dosbox без дополнительных приседаний.

Так выглядит каталог с примерами из этого «мегасборника»:

Напоминаю, что все это богатство из 80х - начала 90х.
Напоминаю, что все это богатство из 80х - начала 90х.

Соответственно скачиваем, распаковываем и запускаем:

dosbox RUNHACK.BAT

Получаем мощные вайбы ностальгии:

С тех пор "синие окошки" стабильно стали ассоциироваться с программированием и компьютерами.
С тех пор "синие окошки" стабильно стали ассоциироваться с программированием и компьютерами.

Разработка

Вот он, момент истины, ради которого мы заморачивались и страдали:

настоящая разработка 80х, прямо на вашем современном компьютере!

Сейчас будет много картинок и видео, выбивающих слезу ностальгии у любого олдфага, учившегося в школе в 90е.

Для начала покажу как выглядит открытие файла с исходником на С:

Это был первый раз, когда функциональные клавиши на клавиатуре (F1-F12) полностью оправдывали свое название, поскольку все основные действия в среде разработки Борланда запускались с их помощью.

Более того:

эти функциональные клавиши и их назначение в среде от Борланда (правда для Паскаля) мы когда-то заучивали в качестве домашнего задания.

На уроках в школе, ага.

Так выглядит сборка и запуск классического «Hello, world» прямо из среды:

Вызов getch() добавлен ради паузы, без него программа сразу завершится и произойдет возврат в среду разработки.

Диалог с предложением сохраниться, автосохранения тогда еще не придумали:

Известное и довольно объемное BGIDEMO с демонстрацией работы разных графических режимов:

Так оно выглядит в работе:

Реализация связанного списка на С (когда-то было любимым вопросом Джоэла Спольски на технических интервью):

Не забываем, что код выше — из 80х, поэтому практически все использумые функции успели устареть и ныне являются небезопасными для использования.

Хотя я и не понимаю до сих пор, как программная функция смеет может угрожать человеку.

Запуск

Наконец последняя часть сегодняшнего шоу:

запуск нашего тестового приложения в эмуляторе PC 5150

Жмем F9 в любимом Turbo C, запуститcя процесс компиляции и линковки:

Итоговый файл HELLO.EXE будет находиться в каталоге TC:

Копируем его внутрь образа дискеты, который мы создавали выше и подключали к эмулятору:

mcopy -i floppy360k.img ../../../../megapack/TC/HELLO.EXE  ::HELLO.EXE

Теперь запускаем эмулятор PC 5150, переходим на диск B: и запускаем наш кастомный «Hello, world»:

Поздравляю, вы только что создали и запустили программу для самого первого PC на свете.

Эпилог

Как ни странно, но BGIDEMO с демонстрацией возможностей Borland также запустилось на PC DOS:

Чтобы приложение заработало, помимо самого DEMO.EXE, надо скопировать на образ дискеты файл CGA.BGI.

Кстати если нет желания заморачиваться cборкой эмулятора PCE из исходников, можно спокойно использовать его Windows-версию с помощью Wine:

wineconsole run-mda.bat

Все отлично работает даже во FreeBSD:

Вот такая она, прикладная некромантия.

P.S.

Более вольный оригинал как обычно в нашем блоге, бекстейджи, дополнительные материалы мы выкладываем на нашем канале, еще теперь пишем делаем видеоролики: VK Video, Rutube, Youtube.

Также поздравляем всех пользователей Хабра с наступившим 2026м годом!

Комментарии (42)


  1. easimonenko
    05.01.2026 11:46

    Не знаю, какая версия Turbo C у нас стояла, но изучали мы его в 1991-1993 гг.


    1. alex0x08 Автор
      05.01.2026 11:46

      Я изучал не Turbo C а Turbo Pascal и уже в 96м )

      Кстати Turbo C версии 2.01 на самом деле последняя, поскольку дальше Борланд переименовал этот продукт в Turbo C++.


      1. easimonenko
        05.01.2026 11:46

        Вот оно как оказывается. Мы изучали именно C, про C++ речи не шло вообще.


        1. alex0x08 Автор
          05.01.2026 11:46

          Изучали С прям в школе? Это наверное была какая-то особенная школа )


          1. easimonenko
            05.01.2026 11:46

            Школа обычная, без уклона. А вот класс был особенный. В конце 80-х -- начале 90-х активно экспериментировали со школьным образованием, и для нашего класса совместили информатику и УПК и отправили учиться в учебный центр, где мы изучали всякое: от BASIC до C и dBase. А по окончанию школы выдали удостоверение.


      1. easimonenko
        05.01.2026 11:46

        У нас интересней было: на первом курсе в 1993 г. мы изучали Паскаль в среде Turbo Pascal, в жизни не догадаетесь на каких компьютерах!


        1. alex0x08 Автор
          05.01.2026 11:46

          Вообще Паскаль это очень старый язык и был много где, в том числе в качестве системного.

          Так что вариантов много )


          1. easimonenko
            05.01.2026 11:46

            Это да, но я подумать тогда не мог, что Turbo Pascal существовал и для Yamaha MSX. :)


            1. alex0x08 Автор
              05.01.2026 11:46

              Это оригинальные ямахи чтоли? Или отечественный клон?


              1. easimonenko
                05.01.2026 11:46

                К сожалению достоверно утверждать не могу, просто не помню. Как-то здесь была статья про такие же, как у нас были.


              1. DenisArd
                05.01.2026 11:46

                Оригинальные. Их закупали для школ.


            1. Galkihtuw
              05.01.2026 11:46

              О, Ямахи! Помню этот черно-зеленый монитор и сетевую загрузку через машину учителя. Паскаль там летал по сравнению с Бейсиком, который был в ПЗУ)


              1. easimonenko
                05.01.2026 11:46

                Так и было.


    1. Nikeware
      05.01.2026 11:46

      В году эдак 94-95 будучи студентом пробовал писать на Borland C++ for Windows (3.1 кажется). На OWL тогда написал первую свою программу под Windows 3.11. Только не смейтесь пожалуйста - это был клон тогда популярной Lines :-)


    1. pfemidi
      05.01.2026 11:46

      У меня на работе в 1988 был Turbo C "полтора", то есть 1.5, и лишь в 1989 он был проапгрыжен на Turbo C 2.0. Но им никто не пользовался потому что всё делалось на Turbo Pascal 5.0


  1. DenisArd
    05.01.2026 11:46

    Насколько я понял, релизная PC DOS 1.0 таки поддерживала формат исполняемых файлов exe, такой же, как в DOS 2.0, и имела на борту линковщик LINK.EXE. А вот в предварительной версии DOS, описанной в той статье, его действительно не было и поддерживались только исполняемые файлы в формате com.

    Ну и использование Turbo C 1988 года для разработки под DOS 1981-1983 не очень то аутентично.


    1. alex0x08 Автор
      05.01.2026 11:46

      Так а дальше уже Borland Turbo C++ ))

      И кстати вполне себе аутентично, поскольку средства разработки обычно новее чем среда исполнения у пользователя.


    1. Galkihtuw
      05.01.2026 11:46

      Обратная совместимость x86 штука великая, если не использовать специфичные прерывания DOS 3.3+, то код из 88-го вполне заведется на DOS 2.x. Главное что бинарник 16-битный и модель памяти подходящая


      1. alex0x08 Автор
        05.01.2026 11:46

        Попробуйте, что сказать. У меня не получилось. По крайней мере без ассемблера и тулсета из средств разработки самой DOS (bin2hex и тд)


  1. infund
    05.01.2026 11:46

    Все же на симуляторе как-то не то ) Недостаточно душевно )


    1. alex0x08 Автор
      05.01.2026 11:46

      Если есть доступ к редким железкам из прошлого - дайте знать, сможем например записать ролик с разработкой на реальном железе.

      Контакты в профиле.


  1. Galkihtuw
    05.01.2026 11:46

    Кстати насчет BGIDEMO - на реальном железе (или точном эмуляторе) с CGA адаптером можно словить интересный эффект палитры. В CGA ведь официально всего 4 цвета в графике, но умельцы через композитный выход (NTSC) умудрялись получать 16 цветов, играя с фазой сигнала)


    1. alex0x08 Автор
      05.01.2026 11:46

      Ну такое можно только на реальном железе показать )


  1. BiTL
    05.01.2026 11:46

    Разработки, обещанной в заголовке, так и не увидел.


    1. alex0x08 Автор
      05.01.2026 11:46

      Docker и Kubenetes тогда еще не было, но понимаю что это сложно представить )


      1. BiTL
        05.01.2026 11:46

        Мне это не сложно представить. Но что в статье разрабатывается? Hello world?
        Как создать ехе-шник печатающий строчку текста под DOS 2.0 - для этого хватило бы и одного абзаца.


        1. alex0x08 Автор
          05.01.2026 11:46

          Ну попробуйте как-нибудь сами написать, вообще формат статьи имеет определенные ограничения, в первую очередь по длине: надо же раскрыть матчасть, окружение, описать шаги сборки и только потом чего-то программировать.

          Так что если тема про эмуляцию или редкий компилятор - код примеров будет на уровне "Hello world", поскольку на большее не хватит места.

          Я пробовал как-то делать глубокое раскрытие именно кода, получилась скучная простыня, которая подвешивала редактор в браузере.


          1. BiTL
            05.01.2026 11:46

            Так я пробовал. Писал.


  1. checkpoint
    05.01.2026 11:46

    С тех пор "синие окошки" стабильно стали ассоциироваться с программированием и компьютерами.

    Вообще-то синие окошки введены в обиход товарищем Нортоном Питером в 1986 году с выпуском его Norton Commander-а (настоящий автор - John Socha). Все остальные просто подтянулись к этому тренду, в том числе и Borland с их библиотекой Turbo Vision.


    1. BiTL
      05.01.2026 11:46

      Microsoft QuickBASIC 2.00 (86-го) уже имел синий цвет окна, так что похоже в обиход это вошло раньше Нортон Командера (который, к слову, в США вроде был не очень популярен).


      1. checkpoint
        05.01.2026 11:46

        Вполне может быть. Но на archive.org у QuickBasic 4.0 окошко черное: https://archive.org/details/quickbasic-4.0-dos. Традиционно голубое появилось у QBasic в 87.

        ЕМНИП, QB при старте просил выбрать цветовую палитру. Там была такая линейка с радио-баттонами разного цвета на черном фоне. Или мне приснилось ?


        1. BiTL
          05.01.2026 11:46

          Я вот здесь смотрел https://www.pcjs.org/software/pcx86/lang/microsoft/basic/quickbasic/2.00/ (после загрузки эмулятора переходим на A: и запускаем QB ) - синее :)

          А в QB4 я сам программировал долгое время, и там по дефолту фон синий был. Хотя, черный тоже можно было настроить.


          1. checkpoint
            05.01.2026 11:46

            Попробовал, действительно у QB синий фон у окна. Ну что сказать, всё равно синие окна плотно закрепились за Петей. Первый Петя, кстати, от Джона Соча появился в 84-м.

            NC и NU были очень популярны во всем мире начиная с США. Нортон на этом хорошо поднялся, хотя обе утилиты написаны Джоном Соча. И книга "Assembly Language Book" тоже написана Джоном Соча более чем полностью, хотя в авторах стоит Peter Norton. :-) Сам Джон Соча до сих пор жив и здравствует, работает программистом, а в свободное время ведет блог на Ютубе посвященный ЧПУ обработке в домашних условиях. Мне попадались его ролики так как я тоже интересуюсь темой ЧПУ, но я не хило выхватил когда пару лет назад где-то прочел интервью с ним и узнал про его блог и что это тот самый Джон. :-)


            1. BiTL
              05.01.2026 11:46

              NC и NU были очень популярны во всем мире начиная с США

              Не буду настаивать, но я встречал американцев (компьютарщиков, работающих в индустрии с начала 90-х), которые при упоминании мною NC делали недоумевающее лицо, мол - шо за нах?
              Также я очень редко встречал NC во всяких иностранных документалках про историю IBM PC. А также во всяких современных роликах у ностальгирующих по DOS. Если посмотреть американских ютуберов, то NC там фиг встретишь, тогда как если это российский автор, то конечно у него будет VC, NC или DN.

              Не полагайтесь на ИИ выдачу Гугла :) Он часто такую хню пишет...


              1. checkpoint
                05.01.2026 11:46

                Я обычно полагаюсь на данные Wikipedia, а там про NC написано следующее:

                Reception

                InfoWorld in January 1988 noted that Norton Commander version 1.0 had not changed since its introduction but was still "way ahead of the pack". The magazine cited its speed, small memory use, ability to compare two directories at once, and intuitive user interface without a directory tree.[4] BYTE in January 1989 listed Norton Commander 2.0 for DOS as among the "Distinction" winners of the BYTE Awards, stating that "navigating through a crowded hard disk is a breeze".[5]

                Посмотрите на список "Inspired software", там помимо Volkov и FAR присутствует еще два десятка навигаторов о которых в наших краях и не слыхивали. То есть люди вполне себе помнять о том, что был такой файловый менеджер.

                Вот тут история создания NC и там автор говорит, что NC был одним из самых популярных файловых менеджеров для всей эпохи DOS.

                А вот тут длинный список ностальгирующих по NC буржуев (уж не знаю американцы ли они или с другого континента):

                https://archive.today/20130706202244/http://www.sincerely-yours.me/archives/21st_century_nostalgia.php


                1. BiTL
                  05.01.2026 11:46

                  Дело ведь еще в том, что NC не был бесплатным. Тогда как тот же DOS Shell поставлялся вместе с MS-DOS. Это в СССР был "коммунизм", и никто за софт не платил :)

                  Алсо, возвращаясь к первенству и законодателям мод на синие окошки и двухпанельность. На самом деле до NC уже были: PathMinder, 1dir, DualView, XTree, PC Shell. И многие на западе уже успели привыкнуть к какому-то из них, выход NC не совершил никакой революции, он просто был одним из десятков файловых менеджеров. А вот в ех-СССР IBM PC пришел лишь в 90-х, и спираченный NC волею судьбы стал стандартом для всех.


                  1. easimonenko
                    05.01.2026 11:46

                    Я начал изучать компьютеры в 1990 г. и первое время компьютер у меня ассоциировался именно с Norton Commander, потому что он запускался при загрузке. :-D Тогда я ещё не знал, что это всего лишь одна из программ для DOS. :)


              1. checkpoint
                05.01.2026 11:46

                Раз зашел разговор о Нортоне и его компании, мне нравится вот эта цитата Джона Соча где он рассказывает как он программил сидя на кухне в доме у Питера, а рядом жена Питера готовила ужин. :-) Настоящий кухонный стартап. Прежде всего фан, а деньги вторичны.

                I joined Peter Norton Computing in 1985, as the company’s first programmer. My previous employer had just closed its doors, so I had sent my resume to a few companies in the area. Peter responded, flew me to Seattle where he was vacationing for the summer, and hired me on the spot. Because Peter was still on vacation, I worked out of a hotel in Seattle for my first two weeks on the job. After that, I spent another six months working from the Nortons’ kitchen table. When Eileen, Peter’s wife, started cooking dinner, I knew it was time to call it a day and head home.

                ... My job responsibility was to develop the software, and that's what I did. I just developed the programs, and that was pretty much the last day Peter programmed.

                The PNCI staff was up to five now. Peter did his writing, managing and marketing from the den of his home. The three clerical people worked upstairs...

                Peter Norton has always been a laid-back person. His whole philosophy, and I've heard him quote this many times, was, "We're going to do this business stuff while it's fun." So that was our primary focus that first it has to be fun, and second it has to make money.

                "I never knew what would happen if we didn't make any money and it was still fun. It probably wouldn't have been too fun at that point, especially for Peter,'' says Kingsbury. "But he wasn't out to create the next greatest generation of software, he wasn't out to make a whole lot of money. It was really to have fun and he enjoyed the flexibility of not having to work under someone else.''

                PNCI reached $5 million in revenues in 1986. It published several other software packages but, according to Kingsbury, the Norton Utilities was still PNCI's cash cow. Utility software was gaining wider acceptance in the microcomputer industry as users realized the advantages of data recovery.


          1. Moog_Prodigy
            05.01.2026 11:46

            Тем не менее у QB до версии 5 был синий фон основного окна, и черный - для окна справки. Справка там мощная была, да.


  1. checkpoint
    05.01.2026 11:46

    Да, в 91-92 годах у нас в ходу был ASM.COM со встроенным линкером который мог генерировать .OBJ, .COM и .EXE. Набор джентельмена: ASM.COM, AFD.EXE и какой-то сокращенный вариант TechHelp-а в виде .COM файла, он мог оставаться резидентом (TSR). Было очень удобно писать на ассемблере в NC-шном редакторе периодически вызывая хитрой комбинацией клавиш TechHelp для справки. Отладчик AFD тоже мог оставаться резидентом, с помощью него кракались многие игры или накручивались "жизни". :-)

    Еще была популярна утилитка RELEASE.COM, она позволяла выкинуть из памяти лишних резидентов.


    1. alex0x08 Автор
      05.01.2026 11:46

      91-92 и 81 все же большая разница, в те годы буквально каждые полгода-год выходили прорывные решения, перетряхивающие рынок.

      Собственно даже пример с PC DOS 1.0 и 2.0 показателен: 1.0 - невнятная поделка на базе CP/M, 2.0 - полностью переписанная с нуля версия, с которой сохраняется частичная совместимость до сих пор. Разница между ними - год.


  1. mrcashe
    05.01.2026 11:46

    Был у меня TurboC 2.0, написал на нем эмулятор ПЗУ i2716 на К537РУ10.
    Но я предпочитал MultiEdit (me.exe) для работы с исходниками, он был удобнее, если редактировать сразу много файлов и запоминал состояние.