MS-DOS без Микрософта

Dec. 14th, 2025 12:10 am
vak: (Знайка)
[personal profile] vak
Разочаровался я в SvarDOS и DR-DOS. Работаешь так, работаешь, проверяешь иногда файловую систему, вдруг чего подпортилось, и неожиданно:



И чего дальше с этим делать? Переформатировать диск заново, до следующей оказии? Нет, такой операционкой пользоваться не годится. Надо искать альтернативу.

Основной способ обмена файлами между писишкой и внешним миром у меня - перетыкание SD карточки (которая диск C: и прочие) в линуксный лаптоп. Линукс поддерживает длинные имена в файловой системе FAT. При копировании файлов я стараюсь, чтобы имена были досовские, то есть 8.3 uppercase. Но мало ли где могу промахнуться. Одно неловкое движение - и CHKDSK сломается навсегда. Нужна версия MS-DOS с надёжной поддержкой длинных имён.

Оказывается, такая существует, и называется она... Windows 98. 😀 Нижний "досовский" уровень тех окошек представляет собой фактический старый добрый MS-DOS 7.1, но улучшенный длинными именами файлов. Проблема только в том, что Микрософт никогда не выпускал тот DOS в виде отдельного продукта.

Оказывается, нашлись умельцы, которые разобрались в этом деле и выпустили неофициальный релиз MS-DOS 7.10. Скачать можно отсюда: winworldpc.com/download/40c395e2-8093-c2a9-18c3-9a11c3a4efbf

Ставится это дело с двух флопиков 3.5". Вот пример загрузки после установки на диск XTIDE:



+3 )

Буду теперь использовать этот ДОС как основной вместо родного микрософтовского на 486 машинке. Жаль только, на XT-шке он не грузится. Затыкается сразу где-то в бутсекторе.
vak: (Default)
[personal profile] vak
Первый - классический клон PC XT на процессоре NEC V20, копия интеловского 8088, в режиме "турбо".

Второй - из поколения 486, на процессоре Cx486dx2-66, аналог (но не копия) интеловского 486DX2-66.

Для тестирования задействуем утилиту Norton Info версии 4.0.



Кто это?

Dec. 13th, 2025 08:50 pm
vak: (Путиномедвед)
[personal profile] vak
Человека, выдающего себя за Путина, видели в Индии.

vak: (Знайка)
[personal profile] vak
Народ бает, в 1992 году это была наикрутейшая игровая машинка. Пришла с CD-ROM и внутренним модемом. Я заменил на 5-дюймовый флоповод, теперь есть чем читать-писать любые флопики высокой плотности, а не только 360к на XT-шке.



+9 )

Metal-cpp

Dec. 12th, 2025 04:23 pm
vak: (Default)
[personal profile] vak
Оказывается, у Apple есть прозрачная библиотечка на Си++, дающая прямой доступ ко всем низкоуровневым графическим примитивам: называется Metal-cpp. Но они не спешат её популяризировать. Благо, она входит в состав их нового пакета MLX. Его нетрудно установить командой "brew install mlx", после чего появляется /opt/homebrew/opt/mlx/include/metal_cpp.

Вот пример простого приложения, рисующего цветастый треугольник: metal-cpp
vak: (Кризис так себе)
[personal profile] vak


They stole my language from me
My mind is dead like an old tree now
It’s a language of pain
Of mothers crying in the rain

Now Russian is the language of death
Now Russian is the language of war
Now it's the language of last breath
Ask Germans for the score

When I'm thinking in Russian
I always stumble on shame
Eyes of an ukrainian boy
Killed while playing the game

When I'm speaking in Russian
My voice is sinking and low
Cause every sound of those words
Turns to the noise of a drone

They stole our language from us
Now every word tastes of rust
The words of war, the words of blood
They drag us down to the mud

My language was charm and a dream
But now when I'm speaking I scream
For million lives, for stolen years
For mothers cries, for buried tears

Now Russian is the language of death
Now Russian is the language of war
Now it's the language of last breath
Ask Germans for the score

When I'm thinking in Russian
I always stumble on shame
Eyes of an ukrainian boy
Killed while playing the game

When I'm speaking in Russian
My voice is sinking and low
Cause every sound of those words
Turns to the noise of a drone...

People, people without a language
People, people without a language
People, people without a language
People
vak: (Default)
[personal profile] vak
Сетевую карточку NE2000 удалось оживить. Понадобился другой компьютер, с 16-битной шиной ISA.

На одном из прилагавшихся флопиков есть утилита SETUP.EXE. Нею можно изменить параметры карточки и прописать в её NVRAM. Изначально карточка находится в режиме Plug-n-Play, то есть не имеет адреса и приписанного прерывания. Это дело следует отключить. Сначала ничего не получалось: утилита не находила карточку. Дело было в конфликте с дисковым контроллером XTIDE. У него тот же базовый адрес 300h, что и у карточки. Когда я догадался вынуть дисковый контроллер и загрузиться с флопика - дело сдвинулось с мёртвой точки.

Вот список допустимых базовых адресов на выбор. Поставим 280h, вроде ни с чем не пересекается.



+6 )
vak: (Знайка)
[personal profile] vak
Смотрите какую уникальную штуку я обнаружил внутри древнего компьютера. Батарейка для часов RTC израильского производства 1992 года. Стал искать новую на замену, и нашёл... израильскую батарейку той же фирмы, на mouser.com. Удивительная стабильность бизнеса.

Real time clock на XT-шке

Dec. 10th, 2025 12:53 am
vak: (Знайка)
[personal profile] vak
Пришла наконец заказанная две с лишним недели назад батарейка для чипа RTC, и стал я разбираться. Надыбанные по интернету getclock.exe и setclock.exe странно глючат. Время работает, а дата при перезагрузке слетает. Помучился я с ними, а решил рубить проблему на корню. Быстро на коленке сваял свою програмулину RTCLOCK.EXE.
Usage:
rtclock get YYYY
rtclock set
Options:
get YYYY - Read time from RTC and set DOS date/time
Here YYYY is the current year
(required, not stored in RTC)
set - Write current DOS date/time to RTC
Вставил вызов в AUTOEXEC.BAT:
rtclock get 2025
Теперь XT-шка всегда стартует с правильным временем и датой. Исходники здесь: rtclock.c

Прикольная фишка выяснилась. Номер года не хранится в чипе RTC. Хранится время, день месяца и месяц. И растёт по мере хода часов. А на годе решили сэкономить несколько битов. И то верно - зачем тратиться? Год меняется нечасто. Первого января сисадмин явится на работу и поправит год на всех компьютерах. 😀

Пришлось в вызове "rtclock get", когда время и дата из RTC пересылаются в DOS, добавить обязательный параметр YYYY - нынешний номер года.

Заодно освоил dosbox-x. Сконфигурил его так, что при вызове диском C: становится папка ~/.dos, а диском H: домашний каталог. Вполне комфортно получается на Турбо Си++ программировать, в том числе с помощью ИИ.
vak: (Default)
[personal profile] vak
Транслирует USB в TTL сигналы RX/TX/GND, заодно показывая содержимое на экране.

Описание: termdriver2.pdf

Исходники: github.com/jamesbowman/termdriver2

Сайт проекта: termdriver.com

Софт для NE2000

Dec. 8th, 2025 02:43 pm
vak: (Знайка)
[personal profile] vak
Я зачитал содержимое флопиков, прилагавшихся к карточке Ether16 от Linksys. Скачать можно здесь:

ether16-software.zip

Содержимое довольно любопытное. Драйверы для массы разных сетевых софтов. На первом диске DOS, OS/2, Windows.
disk1
├── MSLANMAN.DOS
│   └── DRIVERS
│       ├── ETHERNET
│       │   └── ETHER
│       └── NIF
├── MSLANMAN.OS2
│   └── DRIVERS
│       ├── ETHERNET
│       │   └── ETHER
│       └── NIF
├── NDIS
│   ├── DOS
│   └── OS2
├── NETWARE
│   ├── CLIENT32
│   ├── IPX
│   ├── ODI.DOS
│   ├── ODI.OS2
│   └── TURBO
│       ├── NW311
│       └── ODI.DOS
├── PKTDRV
├── README
├── UTILITY
├── WFW311
├── WIN95
├── WIN98
└── WINNT
На втором диске всякие юниксы.
disk2
├── AT&TUNIX
├── LANTASTI.DRV
├── NBIOS
├── NETWARE
│   ├── NW311
│   ├── NW312
│   └── NW4X
├── NT31
├── SCOUNIX
├── SOLARIS
└── UNIXWARE
В папке Utility находится утилита SETUP.EXE для конфигурирования и тестирования карточки. Увы, на XT-шке она не находит карточку, и вообще портит DOS. По всем признакам этот софт не предназначен для процессора 8088. Всё скомпилировано как минимум для 80186, что логично для 1997 года. Надо искать другой компьютер с шиной ISA, чтобы оживить эту карточку.

MKS Toolkit

Dec. 7th, 2025 07:51 pm
vak: (Знайка)
[personal profile] vak
Ещё одно необычное добавление в коллекцию: набор классических юниксных утилит для MS-DOS, под названием MKS Toolkit. Позже были и DJGPP, и Cygwin, и MinGW, но MKS стал первой весточкой, что юниксная жизнь возможна даже во враждебных средах. 😀 И даже на 8088 процессоре.
Имеются непривычные для DOS вещи. К примеру, dev показывает список установленных драйверов.



Команда df выдаёт список файловых систем. Для каждого логического диска показывает количество свободного места и полный размер.



Командой ps можно посмотреть все досовские "процессы".

Компиляторы от A до Z

Dec. 7th, 2025 06:08 pm
vak: (Знайка)
[personal profile] vak
В буквальном смысле: от Aztec C до Zortech C++. Продолжаем устанавливать всяческие компиляторы на XT-шке. Большое разнообразие на этот раз.
  • AZ86 - Aztec C86 version 5.2a
  • LATTICEC - Lattice C compiler, version 3.30
  • LETSC - Let's C version 4.0.4
  • M2 - Logitech Modula-2 release 3.40
  • MIXC - Mix C version 2.5.1
  • POWERC - Power C version 2.2
  • ZORTECH - Zortech C++ compiler version 3.0
К концу 80-х многие программные пакеты обзавелись симпатичными утилитами установки.



Фирма Logitech, перед тем как заняться мышками, разработала солидный компилятор языка Modula-2. Не пригодился никому.



Zortech C++ народ хвалил: чуть ли не лучший компилятор того времени. Установщик симпатичный, но кошмарно тормознутый.

vak: (Знайка)
[personal profile] vak
The company that still owns Digital Research's CP/M operating system has granted a new, more permissive license for the eight-bit OS, making it free for anyone to modify or redistribute.

Это произошло три года назад, и с тех пор деятельность вокруг DR-DOS-овских проектов явно активизировалась.
vak: (Default)
[personal profile] vak
Давайте исследуем альтернативную реальность. В которой контракт Микрософта с IBM не случился, и MS-DOS не родился на свет. Операционка CP/M эволюционным образом развилась в DR-DOS. Прошли десятилетия, и в 2022-м фирма DRDOS Inc открыла исходники и разрешила их опенсорсное применение. Это уже наша реальность, не альтернативная. Получился проект SvarDOS. Я установил его на XT-шке. Благо, смена "жёсткого диска" сводится к втыканию другой SD карточки. Система успешно встала на 128-мегабайтную карточку, разметив её как единый диск C. Добавим Волков Командер и Турбо Си. Вот так оно выглядит после загрузки.



Первое, что следует выяснить: сколько памяти остаётся доступно для пользовательских программ. Для этого есть стандартная утилита mem. Сравним с MS-DOS 3.30 (утилита chkdsk). Имеем 595 696 байт против 595 360 - очень неплохо. Волков Командер и Турбо Си работают устойчиво, не замечая подмены системы.


Как выглядит установка

Надо записать четыре флопика по 360к. На i286 можно было бы обойтись одним флопом 1.2M или 1.44M. Загружаемся с первого флопа.
+9 )

Репозиторий лежит на Гитхабе: sergev/pc-xt-svardos
vak: (Default)
[personal profile] vak
Про древние компиляторы Borland и Microsoft уже было, а теперь очередь Digital Research и IBM. Ну и примкнувшие к ним Паскали от Stony Brook и Watcom.Здесь вам красивостей не будет, как в Турбо Паскале. Суровая командная строка.



Лого вообще только в режиме 40 символов в строке.



Пробовал я и IBM APL, но он сделан для слишком ранней версии MS-DOS, вероятно. Рисует сообщение и виснет.



Остальные компиляторы нормально запускаются и успешно транслируют свои примеры.
vak: (Default)
[personal profile] vak
В продолжение темы Lotus 1-2-3. Я пополнил коллекцию софта XT-шки:

VisiCalc - 1979

Электронные таблицы оказались гениальным изобретением. Вместо тыкать в кнопки калькулятора, проще ввести формулы в ячейки таблицы и записать в файл. Придумали это дело Dan Bricklin и Bob Frankston в 1979 году. Написали софтину для Apple II и назвали VisiCalc. За шесть лет было продано 700 000 копий. Но развивать софтину почему-то сил не хватило, и дело продолжили конкуренты.

На XT-шке VisiCalc успешно вызывается, однако без примеров и документации удовольствия мало.


SuperCalc3 - 1984

В 1981 году компания Sorcim создала электронную таблицу под CP/M, для популярных тогда компьютеров Osborne 1. Быстро отвоевали заметную долю рынка у VisiCalc, и позже много лет успешно конкурировали с Lotus 1-2-3. Многим SuperCalc нравился больше, чем Lotus. И мне тоже.

Старт простенький.


+4 )

SuperCalc4 - 1987

Примерно до конца 80-х Суперкалк успешно конкурировал с Лотусом, после чего уступил и ему, и последующему Экселю. Переход на Windows окончательно добил текстовые таблицы. Покажу только стартовый экран, дальше не особо интересно.

Lotus 1-2-3 на XT-шке

Dec. 5th, 2025 01:16 am
vak: (Default)
[personal profile] vak
Игрушки игрушками, но главной причиной покупать персональный компьютер IBM в 80-х было приложение Lotus 1-2-3. Удобная электронная таблица, деловая графика и простая база данных сочетались в одном пакете. Для планирования, бюджетирования и бухгалтерии это часто было настолько важно, что фирмы покупали ПК только ради 1-2-3. При покупке компьютера спрашивали не просто совместимость с IBM PC, а “работает ли 1-2-3”.

Запустим Лотус 1-2-3 на XT-шке: LOTUS123.



Можно организовать небольшую базу данных для бизнеса.



А можно пользоваться как умным калькулятором. Даются примеры типовых жизненных ситуаций.



vak: (Знайка)
[personal profile] vak
Предыдущая серия была про Борланд, а теперь пройдёмся по Микрософту.
  • MASM - Microsoft Macro Assembler, version 3.01
  • MFORTRAN - Microsoft Fortran, version 5.1
  • MSC - Microsoft C Compiler, version 4.0
  • MSPASCAL - Microsoft Pascal, version 3.31
  • MULISP - Microsoft LISP, version 5.10
  • QC - Microsoft QuickC Compiler, version 2.51
  • QPASCAL - Microsoft QuickPascal, version 1.0
Всё это успешно работает на 8088 процессоре на 640 килобайтах памяти. Много примеров в исходных кодах.
Page generated Dec. 14th, 2025 10:28 am
Powered by Dreamwidth Studios