PDA

Просмотр полной версии : Корвет: Создание загрузочного диска



Prusak
23.03.2009, 13:54
Подскажите ламеру, как на "Корвете" создать системный (т.е. загрузочный диск)? Программой format.com я отформатировал диск, а как перенести на него систему - не пойму. Вроде бы этим должна заниматься программа sysgen.com, но у меня она ничего не делает, просто выходит обратно в систему...

AlecV
23.03.2009, 15:12
Система там сидит на первых дорожках (по моему в Корвете на первых двух). Ее надо просто поблочно скопировать с рабочей дискеты. Если память не изменяет, это можно сделать программой POWER.

b2m
23.03.2009, 15:18
Программу sysgen.com нужно запускать с параметрами: диск файл_с_системой
Например: sysgen a: dos.sys

Prusak
23.03.2009, 21:10
А как быть, если файла с системой нет? В смысле диск загрузочный, но нет намёка на файл, где может быть система? Т.е. гружусь с диска, по команде DIR пишет, что диск пустой.

b2m
23.03.2009, 21:14
Тогда power-ом. Первые две дорожки - системные, остальное - каталог и файлы. Система загружается не из файла, а с первых двух дорожек.

Prusak
23.03.2009, 21:49
Пока получилось только брать образ загрузочной дискеты и "размножать" его на нужное количество дисков. :) Хоть как-то работает...

b2m
23.03.2009, 22:07
Вот если обрезать образ диска до 10Кб, то это и будет файл с системой. Его нужно записать на образ диска, а потом уже можно и на Корвете систему делать.
Хотя, возможно, что первые 128 байт тоже отрезать надо...

AlecV
24.03.2009, 20:31
Prusak, дак у тебя POWER.COM есть ? С ним намного проще.



A0=disk
disk capacity: 992K
tracks: 254 6 system
sectors/track: 32 32 last (deblocking)
sectors/system: 192 64 dir
dir entries: 256 8K
sectors/group: 16 2K 1EFH groups
kbytes/extent: 16K

Смотришь сколько системных дорожек и секторов, умножаешь одно на другое.


A0=read 0 1 4000 192
G=----:-- T=0000 S=001 PS=001 Rec# 1 At:4000-407F
G=----:-- T=0000 S=002 PS=002 Rec# 2 At:4080-40FF
G=----:-- T=0000 S=003 PS=003 Rec# 3 At:4100-417F
...

Меняешь дискету или переходишь на другой диск:


A0=b:
B0=write 0 1 4000 192
G=----:-- T=0000 S=001 PS=001 Rec# 1 At:4000-407F
G=----:-- T=0000 S=002 PS=002 Rec# 2 At:4080-40FF
G=----:-- T=0000 S=003 PS=003 Rec# 3 At:4100-417F
...

caro
24.03.2009, 20:40
Вот если обрезать образ диска до 10Кб, то это и будет файл с системой. Его нужно записать на образ диска, а потом уже можно и на Корвете систему делать.
Хотя, возможно, что первые 128 байт тоже отрезать надо...Ни в коем случае.
Первые 32 байта на дисках CP/M Кворума и Корвета служебные:
В начале 1-го сектоpа 0-ой доpожки дисков, используемых
в "КОРВЕТЕ" и "КВОРУМЕ" записывается таблица, паpаметpы котоpой
используются начальным загpузчиком пpи запуске, и самой
опеpационной системой пpи pегистpации дискет. Стpуктуpа таблицы
пpиведена ниже. В гpафе данные пpиведены значения для системной
дискеты "КВОРУМА" фоpмата DS/DD/96 TPI, соответствующего фоpмату
s6 "Robotron 1715".

┌──────────┬────────┬───────────────────────────── ────────────────┐
│ Смещение │ Данные │ Назначение │
│ (HEX) │ (HEX) │ │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 00H..01H │ A880H │ Начальный адpес в ОЗУ для загpузки ОС. │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 02H..03H │ A980H │ Адpес в ОЗУ точки входа для запуска ОС. │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 04H..05H │ 0014H │ Количество физических сектоpов отведенных │
│ │ │ под ОС на диске ( < 256). │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 06H │ 00H │ 00H - Дискета фоpмата 5,25". │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 07H │ 01H │ 00H - одинаpная плотность записи (SD) │
│ │ │ 01H - двойная плотность записи (DD) │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 08H │ 01H │ 00H - 48 TPI │
│ │ │ 01H - 96 TPI │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 09H │ 01H │ 00H - Данные вектоpа пеpевода сектоpов │
│ │ │ используются. │
│ │ │ 01H - Данные не используются. │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 0AH │ 03H │ Объем физического сектоpа: │
│ │ │ 00H - 128 байт │
│ │ │ 01H - 256 байт │
│ │ │ 02H - 512 байт │
│ │ │ 03H - 1024 байта. │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 0BH │ 01H │ 00H - одностоpонний диск, сектоpа от 1 до N.│
│ │ │ 01H - двухстоpонний диск. │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 0CH..0DH │ 0005H │ Количество физических сектоpов на доpожке. │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 0EH..0FH │ 0050H │ Количество доpожек на одной стоpоне диска. │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 10H..11H │ 0028H │ Количество логических (128 байт) сектоpов │
│ │ │ на доpожке (SPT). │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 12H │ 04H │ Фактоp сдвига блока (BSH). │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 13H │ 0FH │ Маска блока данных (BLM). │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 14H │ 00H │ Маска pазмеpа блока (EXM). │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 15H..16H │ 0185H │ Количество блоков данных на диске -1 (DSM). │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 17H..18H │ 007FH │ Число элементов оглавления -1. │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 19H..1AH │ 00C0H │ Маска блоков оглавления. │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 1BH..1CH │ 0020H │ Размеp вектоpа контpоля оглавления. │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 1DH..1EH │ 0004H │ Количество доpожек * количество стоpон │
│ │ │ отведенных под системную область. │
├──────────┼────────┼───────────────────────────── ────────────────┤
│ 1FH │ 4BH │ Контpольная сумма таблицы. │
└──────────┴────────┴───────────────────────────── ────────────────┘

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

b2m
24.03.2009, 21:04
Хотел поэкспериментировать с sysgen.com, нашёл какой-то один, запустил, а он просто спрашивает сначала откуда скопировать систему, а потом - куда. Т.е. никаких файлов не надо, достаточно запустить правильный sysgen.com :)

Prusak
25.03.2009, 09:01
Значит всё дело в правильном sysgen.com. У меня значит точно неправильный, потому как ничего не спрашивает. Осталось найти образ диска с правильным :)


Prusak, дак у тебя POWER.COM есть ? С ним намного проще.
Power.com у меня есть, но его использование я пока оставлю на крайний случай.