Домой | EN-US Английский | RU Русский | Другие проекты (EN-US Английский)


Проект OS/2 Мультизагрузочный Recovery Live CD


За идею взял eComStation DemoCD. Мой вариант имеет значительно меньшие требования по RAM-памяти (у eCS DemoCD => 192 Mb!!!). Необходимый набор инструментов:
  1. Дистрибутив OS/2™ Warp 3.0 + XR_W044 + XR_D003
  2. Дистрибутив OS/2™ Warp 4.0 + XR_M017 + XR_D003
  3. Дистрибутив OS/2™ Warp 4.52 (ACP2,MCP2) + XR_C006 + XR_D003
    + дополнительные драйвера DaniS506, DaniAtapi, DaniDASD, RamFS, NTFS, Fat32, JFS/UDF и пр.
  4. BCDW 1.50z (для меню загрузки)
  5. BCDW 2.01a (для fdd загрузки) - loader.rar
  6. cdimage, oscdimg от Microsoft или mkisofs (для создания iso-образа)
  7. mkbootcd (для создания boot-каталога)
  8. Winimage 8.0 (для манипуляций с HDD/FDD images)
  9. Nero Burning ROM.
  10. Утилиты Memdisk/OS2CSM/PmVdmCC от Veit Kannegieser.
  11. Эмуляторы. Connectix/Microsoft VirtualPC и VirtualBox.
Создание Bootable CD проходит в среде MS Windows.

Системные требования для запуска Bootable CD.


HDD Emulation + OS2CSM. (Доступны жесткие диски, floppy, все устройства к-рые работают через BIOS INT13h. CD/DVD недоступны by design.) FDD 2.88 Emulation + OS2CSM. (Доступны жесткие диски, CD/DVD, все устройства к-рые работают через OS2DASD/LVM. floppy недоступны by design.) MEMDISK + OS2CSM. (Доступны жесткие диски, floppy, CD/DVD, все устройства к-рые работают через OS2DASD/LVM.) Выбор процессора:
Для Os/2 v 3.0 (ядро ??.???) - 386SX CPU+
Для Os/2 v 4.0 W4 (ядро 14.097) - 386SX CPU+
Для Os/2 v 4.5 W4 - 486SX CPU+ (ядро 14.105_W4)
Для Os/2 v 4.5 UNI - 486SX CPU+ (ядро 14.105_UNI)
Для Os/2 v 4.5 SMP - 486DX CPU+ (ядро 14.105_SMP)
* NB! При подкачке на HDD рекомендуется использовать жесткий диск, работающий в режиме трансляции (LBA), т.е. > 504 Mb.

Компоненты CD.


Установлены следующие компоненты:

CD инструкция по запуску.


!!!Важно : при наличии в компьтере нескольких приводов CD/DVD грузиться нужно с первого из них по порядку. Наличие HDD не требуется, но рекомендуется для размещения swapfile.
Если Ваша система не умеет грузиться с СD,загрузка возможна через bcdl bootable floppy (http://bootcd.narod.ru/) для запуска на машинах без BIOS поддержки ELTORITO ATAPI CDROM BOOT (см \BCDW\LOADER.RAR = 3 образа fdd-загрузчика), НО:
1) только FDD 2.88 Emulation (HDD Emulation пока работает только на Warp 3.0);
2) FLOPPY отключить.
В противном случае IBMINT13.I13 TRAP-ится при HDD Emulation.
Загрузка также возможна через 'Ontrack Disk manager' bootable floppy (опция "Press spacebar to boot from diskette or Press C to boot from CD-ROM"). (http://www.ontrack.com/) запускается на машинах без BIOS поддержки ELTORITO ATAPI CDROM BOOT.

Этот CD поддерживает следующие типы boot media emulation:
а) FDD 2.88 Emulation (2.88 Mb FDD Image).
б) HDD Emulation (40-60 Mb HDD Image).
в) No Emulation MEMDISK (4 Mb MEMDISK Compressed Image).

  1. Привожу меню загрузки BCDW 1.50z
    \winme.ima     ; MS Windows ME EN Boot Disk (original)
    \w98se.ima     ; MS Windows 98SE EN Boot Disk                         
    \w98rus.img    ; MS Windows 98SE RU Boot Disk (original)              
    \msnet.img     ; MS-DOS Networking 3.0 (Windows 98 SE) Boot Disk
    \aurora.ima    ; IBM OS/2 Warp 4.5 W4 (HDD Emulation)
    \merlin.ima    ; IBM OS/2 Warp 4.0 (HDD Emulation)
    \warp4rus.ima  ; IBM OS/2 Warp 4.0 RUS (HDD Emulation)
    \connect.ima   ; IBM OS/2 Warp 3.0 (HDD Emulation)
    \os4boot.img   ; IBM OS/2 Warp 4.5 W4 (FDD 2.88Mb Emulation) NOUSB
    \os2boot.img   ; IBM OS/2 Warp 4.5 W4 (FDD 2.88Mb Emulation)
    \osuboot.img   ; IBM OS/2 Warp 4.5 UNI (FDD 2.88Mb Emulation)
    \ossboot.img   ; IBM OS/2 Warp 4.5 SMP (FDD 2.88Mb Emulation)
    \osmboot.img   ; IBM OS/2 Warp 4.0 W4 (FDD 2.88Mb Emulation)
    \os3boot.img   ; IBM OS/2 Warp 3.0 (FDD 2.88Mb Emulation)
    \BOOTIMGS\cdloader.bin ; IBM OS/2 Warp 4.5 W4 (MemDisk/OS2CSM)
    

    Вы может выбирать пункты нажимая клавиши [Вверх], [Вниз] и затем - [Enter].

  2. Пример меню:
                  IBM OS/2 Warp 4.5 CONFIG.SYS BOOT OPTIONS (MEM Emulation)        
    ------------------------------------------------------------------------------¬
    ¦ Country:         [United States 437,850 (ISO)                            ]* ¦
    ¦ Boot type:       [Workspace shell            ]*  [x] start FC/2 after boot  ¦
    ¦ IDE Support:     [(E)IDE/ATA(PI) Performance mode (DaniS506, DaniATAPI)  ]* ¦
    ¦ ATAPI Support:   [(E)IDE/ATA(PI) Performance mode (DaniS506, DaniATAPI)  ]* ¦
    ¦ DASD Support:    [(E)IDE/ATA(PI) Performance mode (DaniS506, DaniATAPI)  ]* ¦
    ¦ Optical drives:  [Standard CD-ROM/CD-RW/DVD Device Manager (IBMCDROM)    ]* ¦
    ¦                                                                             ¦
    ¦ Video drivers:   [IBMVGA32]*  [1920]x[1080]x[16]*  [x] COM/LPT  [x] Mouse   ¦
    ¦                                                                             ¦
    ¦ CD-ROM located in drive:  [X]*   Reserve the following drive letter:   [W]* ¦
    ¦                                                                             ¦
    ¦ [x] Swap memory on drive: [?]*   [x] Use RAMFS of [xxxx] Mb on drive:  [W]* ¦
    ¦                                                                             ¦
    ¦ [x] Pause on errors   [x] Auto-fail   [x] Suppress popups on drive:    [C]* ¦
    ¦                                                                             ¦
    ¦ [x] DOS subsystem  [x] Win/OS2 16bit subsystem  [?] OPEN32/ODIN subsystem   ¦
    ¦                                                                             ¦
    ¦ [x] UDF  [x] HPFS  [x] JFS  [x] NTFS(r)  [x] FAT32  [x] Up2Tb  [x] USB(cw-) ¦
    ¦                                                                             ¦
    ¦ [x] FLOPPY  [x] UNICODE  [x] APM  [x] APIC  [x] ACPI  [x] KEE  [x] TCPIP-32 ¦
    -------------------------------------------------------------------------------
      Press [F10] when done, [1-4] quick sets, [ESC] - [Alt]+[F1] to bypass OS2CSM
    
  3. Команды меню.
  4. Настройки загрузчика OS2CSM:
  5. Для запуска оболочки FC/2 из командной строки наберите:
    fc.exe
  6. Для изменения разрешения экрана из командной строки (до запуска pmshell) наберите:
    SCREENRS W:\OS2\OS2.INI 1024 768 24
  7. Для запуска определения адреса через DHCP из командной строки наберите:
    \MPTN\BIN\setupd.cmd
  8. Для определения статического адреса из командной строки отредактируйте и наберите:
    \MPTN\BIN\setup.cmd
  9. Для запуска оболочки из командной строки наберите:
    pmshell

Скриншот.


OS/2 Recovery Live CD

Планы.


  1. Поставить MMPM/MMOS2 (пока установлены только библиотеки), SNAP/SDD (установлен, тестируется).
  2. Поставить дополнительно браузеры: Opera и пр.
  3. Поставить Warpoverlay.
  4. ODIN для поддержки Win32 (установлен, тестируется).
  5. WIN/OS2 для поддержки Win16 (установлен, тестируется).
  6. Сделать выборочную загрузку ядра (W4/UNI/SMP).

Проблемы.


  1. EGA/CGA видео режимы работают ТОЛЬКО через HDD emulation. (???)
  2. Netscape работает ТОЛЬКО через MEMDISK option. (???)
  3. Подсистема DOS работает ТОЛЬКО через HDD emulation.
  4. Не работают подсистемы WiN/OS2, ODIN/OPEN32.
  5. Может не грузиться CD с включенным "[v] Use FLOPPY" - рекомендую его отключать. (см. выше).
  6. В режиме HDD Emulation IBMINT13.I13 отключается при обнаружении диска более 8 Gb.
  7. Система еще в отладке и на нек-рых машинах еще TRAP-ит. :)
  8. В режиме FDD Emulation не будет работать IDE CD-ROM (IBMATAPI/OS2CDROM соотв. не нужны) by design.

Пример запуска.


При запуске c CD из списка выберите:
IBM OS/2 Warp 4.5 W4 (FDD 2.88Mb Emulation) NOUSB

Для GUI-режима поставьте отметки - "RAMFS" и "Mouse"
Затем - [F10].
При проблемах несовместимости после появления "OS/2 WARP x.x CONFIG.SYS BOOT OPTIONS" выбирайте комбинации параметров загрузки.

Самостоятельное создание диска.


Для этого CD формируется слеудющее дерево каталогов: FDD/HDD images создаются используя Winimage.
Можно снять образ с реального HDD диска - Primary Master (C:) (лучше не более 100 Mb). Продолжение следует... ...

Пример настроенного CONFIG.SYS


SET SCUSEPRETTYCLOCK=ON
SET SCKILLFEATUREENABLED=ON
SET NEWNOTEBOOKS=NEW
AUTOFAIL=YES
SUPPRESSPOPUPS=C:
IFS=C:\OS2\HPFS.IFS /CACHE:2048 /CRECL:4 /AUTOCHECK:*
IFS=C:\OS2\NTFS.IFS /RO:*
PROTSHELL=C:\OS2\CMD.EXE
SET USER_INI=C:\OS2\OS2.INI
SET SYSTEM_INI=C:\OS2\OS2SYS.INI
SET OS2_SHELL=C:\OS2\CMD.EXE
SET AUTOSTART=PROGRAMS,TASKLIST,FOLDERS,CONNECTIONS,WARPCENTER
SET RUNWORKPLACE=C:\OS2\PMSHELL.EXE
SET COMSPEC=C:\OS2\CMD.EXE
LIBPATH=.;C:\OS2\DLL;C:\IBMGSK50\LIB;C:\IBMGSK40\LIB;C:\IBMGSK\LIB;C:\MPTN\DLL;C:\IBMCOM\DLL;C:\OS2\MDOS;C:\;C:\OS2\APPS\DLL;C:\JAVA11\DLL;C:\IBMINST;C:\ODIN\SYSTEM32;
SET PATH=C:\IBMGSK50\BIN;C:\IBMGSK40\BIN;C:\IBMGSK\BIN;C:\MPTN\BIN;C:\IBMCOM;C:\OS2;C:\OS2\SYSTEM;C:\OS2\INSTALL;C:\;C:\OS2\MDOS;C:\OS2\APPS;C:\JAVA11\BIN;;C:\ODIN\SYSTEM32
SET DPATH=C:\MPTN;C:\IBMCOM;C:\OS2;C:\OS2\SYSTEM;C:\OS2\INSTALL;C:\;C:\OS2\BITMAP;C:\OS2\MDOS;C:\OS2\APPS;C:\IBMINST;;C:\ODIN\SYSTEM32
SET PROMPT=$i[$p]
SET HELP=C:\MPTN;C:\MPTN\HELP;C:\OS2\HELP
SET GLOSSARY=C:\OS2\HELP\GLOSS;
SET IPF_KEYS=SBCS
PRIORITY_DISK_IO=YES
FILES=40
BASEDEV=IBMKBD.SYS
DEVICE=C:\OS2\LOG.SYS
DEVICE=C:\IBMCOM\LANMSGDD.OS2 /I:C:\IBMCOM /S 
DEVICE=C:\IBMCOM\PROTMAN.OS2 /I:C:\IBMCOM
DEVICE=C:\OS2\BOOT\TESTCFG.SYS
DEVICE=C:\OS2\BOOT\DOS.SYS
DEVICE=C:\OS2\BOOT\PMDD.SYS
COUNTRY=007,C:\OS2\SYSTEM\COUNTRY.SYS
CODEPAGE=866,850
DEVINFO=KBD,RU441,C:\OS2\KEYBOARD.DCP
SET LANG=ru_RU
SET TZ=mst-3
SET ULSPATH=C:\LANGUAGE
DEVICE=C:\OS2\BOOT\UNICODE.SYS
BUFFERS=90
IOPL=YES
DISKCACHE=D,LW
MAXWAIT=1
MEMMAN=SWAP,PROTECT
SWAPPATH=C:\OS2\SYSTEM 2048 2048
BREAK=ON
THREADS=100
PROCESSES=64
PRINTMONBUFSIZE=134,134,134
SET KEYS=OFF
SET BOOKSHELF=C:\OS2\BOOK
SET SOMIR=C:\OS2\ETC\SOM.IR;C:\OS2\ETC\WPSH.IR;C:\OS2\ETC\WPDSERV.IR;C:\OS2\ETC\REXX.IR
SET SOMDDIR=C:\OS2\ETC\DSOM
BASEDEV=TIMER0.SYS
RUN=C:\OS2\CACHE.EXE /LAZY:ON /READAHEAD:ON /MAXAGE:7500 /DISKIDLE:60000 /BUFFERIDLE:60000
REM SET DELDIR=C:\DELETE,512;
BASEDEV=PRINT01.SYS /Q
BASEDEV=IBM1FLPY.ADD
REM BASEDEV=IBM2FLPY.ADD
REM BASEDEV=IBM1S506.ADD /V
BASEDEV=OS2AHCI.ADD
BASEDEV=DANIS506.ADD /V
REM BASEDEV=XDFLOPPY.FLT
BASEDEV=OS2DASD.DMD
BASEDEV=OS2LVM.DMD
BASEDEV=CHKDSK.SYS
PROTECTONLY=NO
SHELL=C:\OS2\MDOS\COMMAND.COM C:\OS2\MDOS /P
FCBS=16,8
RMSIZE=640
DEVICE=C:\OS2\BOOT\APM.SYS
RUN=C:\OS2\APMDAEMN.EXE
DEVICE=C:\OS2\BOOT\OS2CDROM.DMD /Q
REM IFS=C:\OS2\BOOT\UDF.IFS
IFS=C:\OS2\BOOT\CDFS.IFS /Q /W
REM BASEDEV=IBMIDECD.FLT
REM BASEDEV=IBMATAPI.FLT
BASEDEV=DANIATAPI.FLT
DEVICE=C:\OS2\BOOT\POINTDD.SYS
DEVICE=C:\OS2\BOOT\MOUSE.SYS
DEVICE=C:\OS2\BOOT\COM.SYS
SET DEVICEFONTDISABLED=NO
BASEDEV=USBUHCD.SYS
BASEDEV=USBOHCD.SYS
BASEDEV=USBEHCD.SYS
BASEDEV=USBD.SYS /REQ:USBUHCD$ /REQ:USBOHCD$ /REQ:USBEHCD$
BASEDEV=USBHID.SYS
BASEDEV=USBMSD.ADD /FLOPPIES:1 /REMOVABLES:1 /FIXED_DISKS:1 /V
BASEDEV=USBCDROM.ADD
DEVICE=C:\OS2\BOOT\USBKBD.SYS
DEVICE=C:\OS2\BOOT\USBMOUSE.SYS
DEVICE=C:\OS2\BOOT\USBCOM.SYS
SET DMIPATH=C:\DMISL\BIN
SET CLASSPATH=C:\IBMGSK\CLASSES\SRIP.JAR;C:\IBMGSK\CLASSES\SGUIDE.ZIP;C:\IBMGSK\CLASSES\CSSGKEY.JAR;C:\JAVA11\LIB\SecMa.jar;C:\java11\Swing\swingall.jar;C:\java11\lib\classes.zip;.\.;
SET SWING_HOME=C:\java11\Swing
CALL=C:\IBMCOM\PROTOCOL\NETBIND.EXE
RUN=C:\IBMCOM\LANMSGEX.EXE
SET NLSPATH=C:\MPTN\MSG\NLS\%N;
SET ETC=C:\MPTN\ETC
DEVICE=C:\MPTN\PROTOCOL\SOCKETSK.SYS
DEVICE=C:\MPTN\PROTOCOL\AFOS2.SYS
RUN=C:\MPTN\BIN\CNTRL.EXE
RUN=C:\MPTN\BIN\VDOSCTL.EXE
DEVICE=C:\IBMCOM\MACS\DC21X4.OS2
SET IKEYMAN_HOME=C:\IBMGSK
SET IKEYMAN40_HOME=C:\IBMGSK40
SET IKEYMAN50_HOME=C:\IBMGSK50
SET DISPLAYTYPE=VGA
DEVINFO=SCR,VGA,C:\OS2\VIOTBL.ISO
SET VIDEO_DEVICES=VIO_SVGA
SET VIO_SVGA=DEVICE(BVHVGA,BVHSVGA)
DEVICE=C:\OS2\MDOS\VSVGA.SYS
SET GRADD_CHAINS=C1
DEVICE=C:\OS2\GRADD.SYS
DEVICE=C:\OS2\MDOS\VMANWIN.SYS
SET C1=GENGRADD,SBFILTER,VGAGRADD
device=c:\odin\system32\win32k.sys -P:pe2lx
CALL=C:\OS2\LVM.EXE /REDISCOVERPRM
CALL=C:\APPS\FC2\FC.EXE

Скачать ISO образ OS/2 Мультизагрузочный Recovery Live CD.


Вы ДОЛЖНЫ обладать лицензией на OS/2 Warp или eComStation, чтобы пользоваться данным диском!

Текущая версия датирована: 28 cентября 2015.
HTTP ссылка (полная версия патч #1):
СКАЧАТЬ OS2BOOT.ISO 7Z 2015.09.28


Team BOOT/2 Ремонтный загрузочный OS/2 CD.


Ремонтный загрузочный OS/2 CD, построенный
по технологии загрузки с ramfs.ifs/cdfs.ifs.
--------------------------------------------

     Мы  рады представить вам новый ремонтный CD с новой технологией загрузки,
исполь-   зующей   загрузчик   FreeLDR   (разрабатываемый  проектом  osFree) и
OS/2-бутер  для  этого  загрузчика. Так же как и технология загрузки с memdisk
Veit-а  Kannegieser-а, эта технология позволяет грузить OS/2 непосредственно с
CD  безо  всяких  флоппи-  образов.  В  отличие  от memdisk, эти файлы берутся
непосредственно  с CDFS, не надо создавать никаких сжатых архивов. Кроме того,
использоваться  может  не  FAT-only,  а  любой  IFS-based ramdisk с поддержкой
длинных  имен  файлов  и  расширенных  атри-  бутов.  Также,  как  и  в случае
memdisk-а,  используется  режим  el-torito  non  emulation. Кроме того, теперь
возможно создание множества различных вариантов загрузки, доступных как пункты
меню  FreeLDR.  Плюс  к  этому,  в  главном  меню  возможно  путем  нажатия на
буквенно-цифровые  клавиши  активизировать так называемые toggles, которые при
нажатии  на  эту  клавишу  переключают  наборы  настроек. При этом, настройки,
задаваемые  через  toggles  в  главном  меню, подста- вляются как переменные в
конфигурационный  файл  boot.cfg  и оттуда далее, при этом выбираются различные
конфигурации   загрузки.  Авторы  загрузчика  частично  реализовали  поддержку
препроцессора  конфигов.  Настройки,  заданные  в главном меню, передаются не
только  в  boot.cfg, но и config.sys и прочие конфиги, причем в зависимости от
активных  переменных  загрузчика  вставляются/удаляются  куски  файла  (аналог
#ifdef в C-препроцессоре) и подставляются значения переменных.

В данном случае, у нас имеются следующие toggles: (см. начало boot.cfg)

клавиша         функция
---------------------------
r               Выбирает "первичный" загрузочный диск (ramdisk)
c               Выбирает "вторичный" загрузочный диск (CD/флешка/жесткий диск)
R               Выбирает зарезервированную букву диска (RESERVEDRIVELETTER в config.sys)
f               Включает показ редактора config.sys перед запуском системы
m               Переключает различные значения флагов SMP,ACPI,LDR
d               Включает вывод отладочных сообщений OS/2 бутера (aka bootos2.mdl)
s               Выбор скорости компорта 9600/115200 бод
p               Выбор базового адреса компорта
u               USB или IDE/SATA CDROM
D               Выбор DASD менеджера (DASD32+LVM/DASD16/DANI)
M               Включить/выключить MMOS2
N               Включить/выключить поддержку сети
l               Локаль: en_US или ru_RU
a               Additions для VirtualPC вкл./выкл.
v               Видеодрайвер gengradd/snap/panorama/VPC gradd
---------------------------

Замечания:
     1)  данный  метод  загрузки  включает два загрузочных диска - первичный и
вторичный.  Первичным  является  рамдиск,  это  тот диск, который для OS/2 ре-
ально  является  загрузочным.  Вторичный  это CD или флешка, т.е., тот диск, с
которого  реально  берутся  загрузочные  файлы  OS/2.  Механизм  загрузки сле-
дующий:  FreeLDR  (который  является мультибут-загрузчиком, самым известным из
которых  является  GRUB) грузит набор файлов, согласно boot.cfg. При этом роль
мультибут-ядра  играет  bootos2.mdl,  остальные файлы грузятся как есть в виде
модулей.  Bootos2.mdl  получает  командную строку от FreeLDR и набор модулей в
виде  специальной  структуры.  Каждый  файл-модуль  имеет  "командную строку",
начальный  и  конечный  адрес  в  памяти  (он  грузится в память непре- рывным
куском).  Bootos2.mdl  устанавливает  специальные "универсальные" mi- crofsd и
minifsd для тривиальной файловой системы, которая реализуется как структура из
модулей  в памяти, и при этом загрузка происходит как обычно для OS/2 - модули
грузятся  по  запросу  ядра/загрузчика  через  mini-/microfsd. Сначала активен
загрузчик os2ldr и загрузка происходит в реальном режиме через microfsd. Потом
os2ldr  передает  управление ядру os2krnl и система переключается в защищенный
режим.  При  этом грузится minifsd и начинается 2-й этап загрузки. Ядро грузит
файлы  при  помощи  вызовов minifsd с префиксом MFS_. При этом, как и в случае
microfsd,  за  один  раз  может  открываться  толь- ко один файл. Так грузятся
BASEDEV,  PSD и некоторые другие файлы. После определенного момента, наступает
3-ий  этап  загрузки.  При этом в minifsd вызывается функция FS_INIT и minifsd
начинает  работать  как  обычная  IFS,  но в режиме read-only и поддерживается
только  определенное  под-  множество  вызовов  IFS. В отличие от 2-ого этапа,
множество  файлов может быть открыто одновременно. При этом грузятся различные
DLL,  начинают    гру-  зиться  различные IFS и DEVICE. Далее, грузится первый
IFS.  Minifsd передает ей полномочия "загрузочной" IFS. Вызывается точка входа
MFS_TERM  minifsd.  При этом minifsd ищет модуль, указанный ключом --module= в
командной   строке   bootos2.mdl  и  вызывает  у  него  точку  входа  FS_MOUNT
(или FS_ATTACH) и переоткрывает каждый открытый файл при помощи FS_OPENCREATE.
После  этого  кроме  ключа  --module=  еще нужен ключ --fs= в командной строке
bootos2.mdl  - он указывает имя IFS, задаваемое экспортом FS_NAME, имеющимся у
каждой  IFS,  оно  должно  совпадать  у  minifsd  и загрузочной IFS. При этом,
minifsd сама себе назначает такое значение FS_NAME и ищет IFS с таким именем в
config.sys,  когда  происходит  передача  управления  IFS. Далее, система гру-
зится как обычно через указанную бутовую IFS. При этом, бутовая IFS может быть
произвольной,   т.е.,   наша   minifsd/microfsd  универсальная.  Успешно  про-
тестирована загрузка со следующими IFS: vfat-os2.ifs, ext2-os2.ifs, ramfs.ifs,
fat32.ifs,  hpfs.ifs, jfs.ifs. Для cdfs.ifs также возможна загрузка напрямую с
CDFS,  только  при  этом  возникает  паника  в  OS2DASD.DMD  - он отказывается
назначать  CDROM  загрузочным  устройством.  Чтобы  была возможна загрузка на-
прямую  с  cdfs,  необходима  правка OS2DASD.DMD/OS2CDROM.DMD. Пока же в каче-
стве  workaround'а  применяется передача прав "загрузочной" IFS не cdfs.ifs, а
ramfs.ifs.  -  благо  что  данная  IFS  все  равно нужна при загрузке с CD для
реализации возможности записи в некоторые файлы. При этом требуется указа- ние
--ramdisk-boot в командной строке bootos2.mdl. В данном случае, minifsd читает
config.sys  и ищет все DEVICE= и IFS=, которые грузятся с рамдиска, и копирует
их с флешки/СD на рамдиск при помощи прямых вызовов IFS: FS_MKDIR, FS_OPENCREATE,
FS_WRITE, FS_CLOSE.  После  передачи прав ramfs.ifs загрузка проис- ходит уже
оттуда.    Кроме    того,   следует   заметить, что  используется  также  ключ
--auto-preload.  Это  специфический  ключ,  использующий  спец.  возможность у
FreeLDR  (в  отличие  от  GRUB)  из мультибут-ядра вызывать команды мультибут-
загрузчика.  При  этом  bootos2.mdl  читает  config.sys и ищет в нем операторы
BASEDEV,  PSD,  IFS,  DEVICE,  RUN,  CALL  и грузит в память указанные файлы в
качестве  модулей.  Т.е.,  при  указании  ключа  --auto-preload отпадает необ-
ходимость  указывать все нужные для загрузки файлы в boot.cfg. Нужно указывать
только   os2ldr,   os2krnl,   os2dump,   config.sys,   os2ldr.msg,  os2ldr.ini
(опционально),  os2logo,  os2dbcs, os2dbcs.fnt. Остальные файлы должны браться
из  config.sys,  все  что  можно  угадать оттуда, угадывается. А вот например,
дополнительные  DLL угадать неоткуда (хотя в будущем, можно попытаться парсить
все  загружаемые  модули  и  грузить  все  модули,  прописанные  в  их  списке
импортов),  поэтому  такие  файлы  необ-  ходимо  указывать  явно. Кроме того,
тестировалась  ntfs.ifs  от  Павла  Штеменко  (aka  [Pasha] на #os2russian). В
принципе,  она, по идее, должна бы тоже работать, но Паша почему-то в ntfs.ifs
ввел  проверку  для  EXE и DLL, и если они пытаются открываться READ/WRITE, то
FS_OPENCREATE отказывается запускать EXE/DLL с ntfs. Не знаю, почему, сам Паша
говорит,  что  это  ограничение  введено  специально. Что ж, будем дожидаться,
когда  он  реализует  запись  на ntfs, но справедливости ради, CDFS.IFS такого
ограничения  не  имеет,  и  несмотря  на то, что она тоже READONLY, она просто
молча  открывает  EXE/DLL  readonly если даже запрошены привилегии READ/WRITE.
Так  что, загрузка с NTFS в принципе тоже возможна, благо FreeLDR поддерживает
NTFS, все зависит от того, когда Паша реализует запись на NTFS.

     2)  редактор  config.sys  запускается  при  нажатии  Alt-E на "кирпиче" с
надписью OS/2, который выводится os2ldr, либо при указании --cfged в командной
строке  bootos2.mdl.  Последнее  как  раз происходит при нажатии "f" в главном
меню.

     3)  флаг  SMP выбирает UNI/SMP ядро. UNI ядром является 14.104a от IBM. В
каче-   стве  SMP  ядра  выбрано  ядро,  развиваемое  в  рамках  проекта  OS/4
(http://os4.su).  LDR  выбирается  IBM/OS4, по умолчанию выбран os2ldr проекта
OS/4.  И  как  альтер-  натива, может выбираться os2ldr от IBM, это как раз та
версия, что поставляе- тся с Авророй и eCS. Флаг ACPI включает/отключает ACPI.

     4)  Отладочные  опции.  Нужны  при  возникновении  проблем  при загрузке.
Клавишей  "d"  включается  отладка.  При  этом  в ком-порт выводятся сообщения
bootos2.mdl  (сначала  сообщения главной части бутера, потом microfsd, и затем
minifsd).  При  активном  режиме  отладки  "s" выбирает скорость ком-порта (по
умолчанию  9600),  "p"  выбирает  базовый  адрес компорта (по умолчанию 0x3f8,
т.е., порт com1).

     5)   Редактор   config.sys   пока   реализован  лишь  частично.  Работают
клавиши-стрелки,   PgUp/PgDn,  Home,  End  для  перемещения  по  файлу.  Можно
вставлять перевод строки нажатием Enter, удалять символы по BackSpace.

     6)  Модули  грузятся командами вида module   , где   это путь к модулю на диске,  это путь, который будет видеть OS/2.
Иными   словами,   если   указано,   например  "module  (cd)/boot/ramboot.cfg
config.sys",  то  загрузится файл \boot\ramboot.cfg с компакт-диска, при этом
он  будет  играть  роль  файла  config.sys  в  корне загрузочного диска. Таким
образом,  можно  иметь  много  файлов  config.sys  для различных конфигураций,
лежащих в одном каталоге (причем, не обязательно корневом).

     7)  Нотация  имен  дисков.  Как и в GRUB, (cd) означает загрузочное CDROM
устройство. Если в системе есть несколько CD-дисков, то (cd) будет тот из них,
с  которого  происходит  загрузка.  (hd0)  это  первый BIOS харддиск, (hd1) --
второй.  Можно  также  писать (0x80) и (0x81) - BIOS int 13h номер устройства.
Также,  можно  ука-  зывать разделы: (hd0,0) - первый primary раздел на первом
харддиске. (hd0,3) - четвертый primary раздел на первом харддиске. (hd0,4) это
первый  логический  раздел  на  1-м  харддиске. Таким образом, разделы 0-3 это
primary,  4,...255  это логические. Также, (fd0) это первое флоппи устройство,
(fd1)  -  второе флоппи- устройство. (nd) - сетевое устройство при загрузке по
tftp/ripl/etc.  (пока  не  реализовано  в  FreeLDR).  В  дополнение  к дискам,
имеющимся в GRUB, "()" означает диск, на котором установлен FreeLDR.

     8)  Заметим,  что функции FreeLDR не ограничиваются загрузкой OS/2. Также
возможна  загрузка  любого  мультибут-совместимого  ядра (например, FreeDOS32,
HelenOS, Moebius, GNU HURD). Несовместимые ядра тоже могут грузиться при помощи
FreeLDR.  Для  этого  создаются  вспомогательные системно-зависимые загрузчики
типа  bootstrap в случае L4/Fiasco или bootos2.mdl в случае классического ядра
OS/2;   chain.mdl  для  загрузки  других  несовместимых  загрузчиков  "методом
цепочки";  linux.mdl  для  загрузки  ядер,  совместимых  с Linux ядром. Это не
только сам Linux, но и memdisk (не тот, что написал Veit Kannegieser и который
используется  для  загрузки eComStation, а тот который написан Peter Anvin для
syslinux  и  который  обычно  используется для загрузки DOS из-под syslinux. В
данном  диске  linux.mdl  грузит  memtest86  или  memdisk  с  образом  флоппи,
содержащим FreeDOS.

     9)   Вы   можете   добавлять   программы  на  этот  диск  согласно  вашим
предпочтениям.  Для этого следует поместить содержимое этого CD в произвольный
каталог,  который  назовем  rambtcd\, затем добавляете программы и драйверы на
диск,  правите  конфиги,  далее  для  сборки  ISO-образа  достаточно запустить
\tools\rambtcd.cmd.  В  данной версии BootCD rambtcd.cmd можно запускать прямо
из  каталога  tools\,  iso  образ  будет  создан  в каталоге, родительском для
rambtcd\;  для  стирания  CDRW  и  записи  на  него служат скрипты blank.cmd и
burn.cmd. Исправьте в двух последних скриптах dev=0,0,0 на "координаты" вашего
CD рекордера на шине SCSI.

     Тестировать  ISO  можно  в VirtualPC или другом эмуляторе, поддерживающем
OS/2  (например,  twoostwo или qemu некоторых версий. В qemu OS/2 то работает,
то  не работает. Успешно протестирован qemu версий 0.9.0 и 0.10.1, не работает
на    0.10.3).   Для   того,   чтобы   qemu   работал   с   OS/2,   необходимо
os2lvm.dmd/os2dasd.dmd   заменить   на   danidasd.dmd   или  16-битную  версию
os2dasd.dmd. Иначе вы получите трап в os2lvm.dmd.

     10)  В config.sys присутствуют макросы "@" и "!". Эти символы bootos2.mdl
заменяет на выбранные primary и secondary boot disks соответственно. Т.е., то,
что   вы  выберете  в  главном  меню,  и  будет  подставлено  в  окончательный
config.sys.  Вы  можете  запустить  ре- дактор config.sys и указанные значения
будут  автоматически  туда  подставлены.  Вам  ос-  тается  только  произвести
окончательную правку. Также, кроме @: и !:, в скриптах встречается макрос #:,
он обозначает зарезервированную букву диска (RESERVEDRIVELETTER в config.sys).

     11)  Поддержка  ACPI  включена  в этот диск, но самого ACPI на этом диске
нет.   Файлы   acpi   вы   можете   добавить   сами,  если являетесь законными 
владельцами   копии   eCS.   (достаточно  добавить  файлы  acpi.psd,  apm.add,
AcpiDaemon.exe в каталог os2\boot\ и acpi32.dll в os2\dll\, пересобрать iso, и
вновь  записать  его  на  болванку).  Переименуйте  при  этом AcpiDaemon.exe в
acpidaem.exe.  Также,  кроме  acpi, есть  поддержка  ntfs.ifs и Panorama VESA, 
для  последней  достаточно  добавить panogrex.dll  и  vbe2grad.dll  в \os2\dll 
(а  также,  для  WPS  интеграции  в  новых  версиях  --  1-я  закладка объекта 
System -- скопировать ecolange.dll и wppansys.dll в \os2\dll и wppansys на DPATH);  
для ntfs достаточно скопировать ntfs.ifs в  os2\boot\ и untfs.dll с untfsd.dll
в os2\dll\ и откомментировать все вхождения ifs=!:\os2\boot\ntfs.ifs в config.sys.

     12)  Загрузчик  FreeLDR  может  быть  установлен  на ваш жесткий диск или
флешку.  Для этого сначала скопируйте каталоги \boot\loader и \boot\sectors на
нужный   диск.  Затем  запус-  тите  \tools\freeinst\fi-os2.exe  и  установите
бутблок  на  этот же диск. Прочитайте файл readme.txt из того же каталога. При
необходимости можно установить MBR от osFree team на загрузочный диск. Если вы
предпочитаете  другой  загрузчик в качестве главного, то запускайте FreeLDR из
этого  загрузчика.  MBR  может  быть  сконфигурирована  для загрузки FreeLDR с
любого  раздела  (не  только  primary, но и logical). Для установки MBR требу-
ются  два параметра - номер жесткого диска, с которого грузить FreeLDR и номер
раздела  на  нем,  где  FreeLDR  расположен.  Номер  жесткого диска может быть
отличный  от  диска,  на  котором  стоит  MBR  (MBR должна быть на загрузочном
жестком  диске,  и  продолжает  загруз-  ку  с любого другого жесткого диска).
Раздел  может  быть  primary,  если  задать номер 1-4, и logical, если выбрать
5,6,...    Для    установки    бутблока    достаточно   задать   букву   диска
соответствующего раздела. (Замечание: запускайте freeinst с логического диска, 
отличного от того, на котрый вы хотите установить бутсектор FReeLDR -- просто
скопируйте сначала файл fi-os2.exe на другой раздел. Есть  еще  fi-w32.exe -- 
сборка freeinst для Win32. Вы можете исрпользовать его для  установки  из-под
Windows). Версии под Linux и DOS DPMI32 пока не рабочие.

     13)  Вы  можете  перенести  содержимое данного диска на флешку. Для этого
скопируйте  сначала  содержимое  диска  как  есть,  затем,  как  это описано в
предыдущем пункте, установите MBR и бутблок на эту флешку (тестировались также
и   флешки,  размеченные  как  big  floppy,  но  все  равно,  предпочтительнее
использовать  PRM  (partitionable  removable  media  в терминологии IBM, т.е.,
флешки с таблицей разделов)). Далее следует убедиться, что FreeLDR загружается
с  флешки  и  показывает  меню.  Если это так, то далее нужно поменять во всех
копиях  config.sys из каталога boot (файлы с расширением *.cfg) 1) cdfs.ifs на
fat32.ifs/hpfs.ifs/jfs.ifs  в зависимости от ФС флешки, (любая ФС из указанных
трех  может  быть использована для загрузки OS/2, но следует заметить, что JFS
chkdsk  при каждой загрузке будет затирать бутблок и заме- нять его на свой) а
строку  с  cdfs.ifs скопировать дальше по ходу файла config.sys, также 2) надо
добавить ключ /I13 у usbd.sys для того чтобы USB стек задержал отключение BIOS
поддержки   USB   (необходимо   для  загрузки  с  MSD),  а  также  3)  следует
закомментировать  DASD32.DMD и OS2LVM.DMD и откомментировать DANIDASD.DMD. Это
также  необходимо  для  загрузки  с  removable  флеш-дисков. - Дело в том, что
OS2DASD.DMD  не  умеет  назначать букву removable устройствам на раннем этапе.
Это справедливо для загрузки не только с USB флешек и жестких дисков, но и для
ATAPI/SCSI  ZIP/LS120  и прочих устройств (и, как это ранее было замечено, для
CDROM  устройств тоже :-(). и 4) следует добавить строку '--pt=0x35,0x83,0x27'
в  командную  строку  bootos2.mdl  в  boot.cfg,  а  также  вариант {D2=auto} в
оператор  'toggle  set  c'.  Строка --pt= должна соответствовать строке /AT: у
danidasd.dmd.  Эти  оба  ключа  (bootos2.mdl  и danidasd.dmd) указывают список
распознаваемых  типов  разделов  на диске. {D2=auto} нужно, чтобы по умолчанию
был   ключ   --drv=auto   у  bootos2.mdl.  Это  автоматически  выбирает  букву
removable  непосредственно после всех fixed дисков (ограничение danidasd.dmd).
Теперь   неважно,  сколько  на  данной  машине  разделов  на  жестких  дисках.
Bootos2.mdl  сам  распарсит  таблицу  разделов  и  сосчитает  число букв перед
флешкой  и  подсунет  эту  букву  DANIDASD'у  (поэтому не надо теперь руками в
config.sys  букву  флешки  подставлять  через  ключ  /BD  DANIDASD-у). Следует
заметить,  что  если  у  вас  не  флешка,  а  жесткий диск (или флешка с кучей
разделов),  то загрузочным должен быть самый первый из них. При этом остальные
будут  недоступны  в  системе  OS/2,  загруженной  с такого диска (ограничение
DANIDASD.DMD :-().

     14)  Все  переменные  текущего  конфига и их текущие значения выводятся в
черное  поле  под  главным  меню.  TODO:  сделать  подсказку насчет клавиш для
toggles.

     15)  В config.sys есть закомментированные строки. Например, для поддержки
мультимедиа   необходимо   добавить   на   диск   каталог   \mmos2,   а  также
раскомментировать  все строки в config.sys, относящиеся к mmos2. Для поддержки
Tonigy  и RSJ CD Writer необходимо отко- мментировать соответствующие строки в
config.sys,  скопировать  каталог  с  RSJ  CD  Writer  в \tools\cdwfs, а также
отредактировать  \tools\bld.cmd,  добавив в строку вызова xmakeini файл rsj.rc
(лежащий  в  каталоге  \tools\rc;  там  же  лежат  и  .rc-файлы  для генерации
WPS-объектов других полезных программ).

Добавление от 29.08.2010 г.:

     16)  Теперь  в  BootCD  включена  новая  версия  FreeLDR,  поддерживающая
препроцессор  конфигов.  Теперь  поддерживается конструкция !ifeq <переменная>
<значение>  ... !else ... !endif, где <переменная> берется из числа переменных
в  boot.cfg. Также поддерживается конструкция !include , она позволяет в
текущий файл включить второй файл. Путь к файлу должен быть абсолютным, и пока
работают  пути  только  с  прямыми  слешами.  На основе этих нововведений были
убраны  четыре  отдельных  файла  для  PM/tshell  и  ACPI/без  ACPI  и введены
переменные  MODE  со  значением  pm  и  tshell,  а  также  ACPI  со  значением
"-noacpi"/"".

     17)  Добавлена  возможность  выбора  локали  из  главного  меню. При этом
задаются  COUNTRY  и  CODEPAGE  в  config.sys,  а  также  выбирается  ini.rc в
зависимости  от  локали,  в  котором выбираются английские/русские подписи для
объектов рабочего стола.

     18)  Добавлены  дополнительные  DLL с WPS классами, теперь в папке System
setup  появились  апплеты для настроек. Пока объект Spooler находится в DLL из
русской OS/2, поэтому при выбранной английской локали там выводится нечитаемый
текст. Будет пофикшено в следующих версиях диска. Также в Hardware manager при
выборе английской локали местами показываются нечитаемые строки.

     19)  Добавлены  программы:  DN/2  (который пока не запускается ;) Причины
пока   не   ясны.   Программа   молча  завершается  и  не  оставляет  записи в
popuplog.os2.  Мы  будем  благодарны,  если  кто-нибудь  укажет  на  возможную
причину.), miniterm, regedit/2.

     20)  Добавлена  подержка  additions  для  VirtualPC.  Активизируется  при
нажатии  клавиши  "a"  в  главном  меню. По умолчанию отключено, при включении
активизирует  интеграцию  курсора  мыши,  клипборда  и  поддержку монтирования
дисков хостовой машины из-под гостя-OS/2.

     21)  Теперь в startup.cmd вставлены вызовы SysIni, задающие более удобный
системный шрифт для VIO-сеансов.

Добавление от 03.09.2010:

     22)    Теперь   стало   возможным   изменение   зарезервированной   буквы
(RESERVEDRIVELETTER  in  config.sys).  Для  этого  надо  нажимать букву 'R' (с
учетом  регистра)  циклически  в  главном  меню.  Изменение RESERVEDRIVELETTER
автоматически меняет вторичный загрузочный диск (CD/flash/HDD).

     23)  Стандартная  цветовая схема изменена на "Space" (Космос). Теперь она
становится активной сразу после загрузки системы.

     24)  Добавлена  возможность  выбора  указателей  мыши  (теперь  их  можно
поменять из настроек объекта "Мышь", закладка 'Pointers' ('Указатели').

     25) Добавлен выбор видеодрайверов GENGRADD/SNAP/Panorama/VPC GRADD/Cirrus
Logic  CL-GD5436  (Как  пример  не-GRADD  драйверов).  По умолчанию выбирается
GENGRADD,  также  можно  выбирать  SNAP для поддерживаемых видеокарточек. SNAP
включен  в  состав  CD,  а вот Panorama пришлось убрать по известным причинам.
Желающие  легко  могут  добавить  Панораму  на  этот  CD, для этого достаточно
скопировать  panogrex.dll  и vbe2grad.dll (плюс, если хотите, wppansys.dll для
настроек  Панорамы  на  1-й  странице  объекта System, и плюс ecolange.dll для
поддержки  NLS в wppansys, плюс wppansys.nls на DPATH (можно в \os2\system) --
собственно,  ресурсы нужных языков) в каталог os2\dll\ и пересобрать ISO-образ
(для  этого  достаточно запустить rambtcd.cmd). Все что нужно (кроме этих двух
DLL),  на  диске  есть.  Модифицировать  config.sys  и  скрипты  при  этом нет
надобности, все там уже есть.

     26)  Также по многочисленным просьбам ;-) автор FreeLDR добавил подсказку
о клавишах в экране с переменными под главным меню.

Добавление от 17.02 2012 г.:

     27)  DN/2  теперь  заработал.  Оказывается,  надо  было  просто  добавить
минимальную поддержку TCP/IP. (пока только loopback + nullndis.os2).

     28)  Теперь  заработал  "OS/2  Warp registry editor" aka regedit2.-- была
большая  пауза  при  старте  из-за  того,  что  отсутствовало  Open32  (Win32)
registry. Теперь, после добавления минимального registry, пауза исчезла.

     29)  Добавлены  программы: Theseus4, QT4 с двумя приложениями: kchmviewer
(просмотр  виндовых  .chm-файлов)  и  QTWeb  -- веб-браузер, Object recreator,
SysInfo/2,  Links,  и  еще несколько программ: MiniLVM, RSJ CD Writer, Tonigy,
Netdrive (trial shareware программы. Tonigy с легальным официальным ключом).

     30)  Заработала TVFS, надо было просто запускать его правильно (до этого,
tvctl  стартовал  в  детаче,  а  надо как "tvctl -Dwt" и оно само стартовало в
отдельной сессии. До этого был вис во время шутдауна, сейчас он исчез)

Добавление от 07.02.2014 г.:

     31)  Добавлена  поддержка  QSINIT  в качестве загрузчика (при нажатии "m"
выбрать LDR=dix)

     32)   По   клавише   "i"   Выбирается   программа,  запускаемая  по  "SET
RUNWORKPLACE=..."   (pmshell,   4os2,   cmd,   ecsinst   (скрипт-враппер   для
инсталлятора  eCS.  (Замечание. На данный момент инсталлятор eCS не работает c
флешки  как  надо и может повредить ваши ОС и данные, установленные на жестком
диске, и каждый раз меняет геометрию флешки, и жесткого диска, без спросу, так
что,  вас  предупредили.  Это  экспериментальная  фича  и может испортить ваши
данные)).

     33)  Починена  WinOS/2.  Теперь  она  работает  хоть с флешки, хоть с CD.
Починена  также  поддержка MMOS/2. Можно играть *.wav, *.avi c помощью кодеков
MMOS/2. Для поддержки звука в WinOS/2 установлен драйвер vwinaud. Для эмуляции
MIDI-секвенсера   установлена   TimidityMCD,   так   что,   вы  можете  играть
MIDI-файлы средствами MMOS/2.

     34)  Теперь  Lucide перестал падать на DJVU-файлах, и работает чтение как
PDF, так и DJVU.

     35)  Новый  способ  определения  буквы  флешки/CD,  при  помощи  драйвера
locatecd.sys  от  Veit  Kannegieser.  Теперь  при  указании  D2=*: (циклически
нажимая  клавишу  "c".)  выбирается  этот  режим.  Сначала  загрузочным диском
является  ramdisk  (по  умолчанию, z:), затем грузится данный драйвер. Он ищет
диск с указанной меткой ("OS2BOOT" в данном случае), содержащий указанный файл
(\tools\os2boot.flg  в  данном  случае).  То  есть,  вы  должны  сделать метку
"OS2BOOT" для этого диска, или любую другую, но тогда надо ее поменять также и
в  строке  загрузки  драйвера в ramboot.cfg (config.sys). Драйвер по этим двум
признакам  определяет  букву  загрузочного носителя. После этого он заменяет в
переменных  окружения  букву  "@"  на  букву  загрузочного носителя, (а также,
меняет  букву  рамдиска  на  букву  флешки/CD  в  системных  таблицах  OS/2, и
флешка/CD   теперь  превращается  в  загрузочное  устройство).  Данный  способ
работает для любого типа (removable) носителя, а не только CD.

     Замечание.  У  locatecd.sys  '@'  играет  роль  макроса  для загрузочного
устройства.  У  bootos2  же  это немного не так. '@' это первичное загрузочное
устройство  (рамдиск)  а '!' это вторичное (CD/флешка). Поэтому, чтобы работал
locatecd.sys,  мы  еще  до  загрузки  системы, в коде bootos2.mdl, если видим,
что  D2=*,  то  меняем  '@'  на  букву  рамдиска,  а  '!' меняем на '@'. Когда
locatecd.sys загрузится, он увидит '@' и заменит это место на букву флешки/CD.

Добавление от 18.03.2014 г.:

     36)  Добавлена  поддержка  сети  и автоопределения типа сетевого адаптера
(поддерживаются  первые  три  сетевых адаптера). Для этого используется скрипт
\tools\gennic.cmd (на REXX) и три скрипта- хелпера (на awk). Скрипт gennic.cmd
запускает  pci.exe  и  выбирает  из  его вывода PCI-адаптеры нужного класса (в
данном  случае,  класса  'Network'),  при  помощи скрипта-хелпера scanpci.awk.
Затем  он  при  помощи  списка  genproto.slo  выбирает название драйвера и его
.nif-файла,  и  запускает  genproto.exe,  передавая названия этих файлов через
переменные   окружения   DETECT_OS2_1,   DETECT_NIF_1,   ...  ,  DETECT_OS2_N,
DETECT_NIF_N.  Используя  эти  данные,  genproto.exe  (за создание которого мы
должны  поблагодарить  Veit  Kannegieser)  генерирует файл protocol.ini. Затем
скрипт   gennic.cmd  копирует  драйвера  на  ramdisk  под  именами  ndis1.os2,
ndis2.os2,  ndis3.os2. Если драйвер для сетевой карты не найден, то в качестве
ndisX.os2  используется  nullndis.os2  (фиктивный  драйвер,  который ничего не
делает).  (Если  для  двух  и  более  сетевых  карт  драйвер  не  найден, то в
protocol.ini  будет  две  копии  nullndis.os2,  причем  более одной копии этим
драйвером  не  поддерживаются,  и вторая копия не загрузится. -- Это известная
проблема.)

     37)  Автоопределение  сетевых  карт поддерживает wi-fi и для этого в диск
включен  GenMac. По идее, должны нормально работать две копии GenMac-а. Обычно
первая сетевая карточка это lan0, вторая lan1, причем wifi обычно идет вторым,
проводной  ethernet  --  первым.  Для  выбора  "основной" сетевой карты (через
которую  будет идти основной трафик и через которую идет "default route") есть
опция  NIC в меню загрузчика. По умолчанию NIC=lan0. Умолчание можно изменить,
отредактировав  файл  boot.cfg  (toggle  set  n ... -- изменив порядок блоков,
заключеных в фигурные скобки).

     38)  Для  поддержки  wi-fi  добавлен  wpa_supplicant.exe (запускаемый как
"wpasuppl  lanN"),  c  конфигом %etc%\wpa_supplicant.conf (который запакован в
архив  \tools\misc.zip и расппаковывается в %etc% на рамдиске). Также добавлен
ISC DHCP client (запускаемый как "dhcli lanN" или, для совместимости со старым
OS/2  DHCP  клиентом,  как  "dhcpstrt  -i  lanN"). При наличии DHCP-сервера и,
опционально,  wi-fi,  IP  адрес,  маска  подсети,  шлюз  по  умолчанию,  и др.
назначаются автоматически. Это также должно работать в большинстве виртуальных
машин  (например,  VPC).  Также, для автоматизации настройки параметров wi-fi,
добавлены wpa_gui (на QT4) и wpa_cli.

     39) QTWeb заменен на Arora

Добавление от 17.08.2014:

     40)   Коллекция   windows-драйверов,  официально  поддерживаемых  GenMac,
начиная  с  этой  версии  диска,  упакована в архив \genmac\driver\genmac.zip.
Также, добавлена коллекция GenMU неофициально поддерживаемых драйверов, в виде
архива  genmu.zip,  лежащего  рядом  с  первым.  Данные  архивы содержат набор
поддиректорий   вида   wrapper_VID_PID,  содержащих  виндовый  драйвер,  кусок
конфигурации  (ветка,  импортированная  из  регистри),  и, опционально, патч в
формате  IBM  OS/2  patch.exe (стандартная утилита для применения фиксов путем
бинарных   патчей).   При  этом,  виндовый  драйвер  копируется  на  рамдиск в
\genmac\driver\...  где  рядом лежат распакованная директория wrapper_VID_PID,
хелпер  генмака  helperw.exe, а также его лог-файл. Генмак, как и любой другой
OS/2  сетевой  драйвер,  копируется  в  \ibmcom\macs\... на рамдиске, патчится
(если  есть  файл  патча)  и  переименовывается  в  ndisN.os2. Внутри драйвера
genm32w.os2  (генмак) есть таблица поддерживаемых виндовых драйверов с нужными
параметрами.  Кроме  генмака,  многие  другие  драйвера,  такие как rtgnda.os2
(Realtek  rtl8169/rtl8168/  etc.)  проверяют карточку на жестко заданный набор
VID:PID.  Чтобы в жестко заданный список добавить новую карточку в виде другой
пары  VID:PID, пишется патч wrapper_VID_PID\patch.dat (это не генмак, а другой
обычный  OS/2 драйвер, поэтому кроме патча, в этой директории windows драйвера
нет,    только   сам   патч).   Все   такие   директории   с   патчами,   вида
wrapper_VID_PID\patch.dat,  складываются в один каталог и запаковываются zip с
именем   \genmac\driver\misc.zip.   Список  имен  (без  расширения)  .zip-ов с
вендовыми  драйверами  и/или  патчами  находится в скрипте \tools\gennic.cmd в
виде строки-списка:

DriverPacks = 'genmac genmu misc'

     Преимущество  такого  подхода  в  том,  что во время загрузки добавляется
только  одна, нужная только при загрузке на данном компьютере, пара VID:PID, а
не   все,  которые  могут  понадобиться  в  принципе.  Иначе  бы,  все  нужные
идентификаторы просто не влезли бы в ограниченную таблицу "правильных" ID-ов.

     41)   Параметр  NETWORK  из  главного  меню  FreeLDR  теперь  принимает 4
значения.  NETWORK=none  отключает  поиск  сетевых  карт,  и  вообще  сеть (на
некоторых  компьютерах  сканер  PCI  pci.exe  виснет  при сканировании шины) и
загрузку   сетевых  драйверов.  NETWORK=null  загружает  драйвер  nullndis.os2
(драйвер-заглушка,   не   делающий   ничего).  NETWORK=auto  задает  полностью
автоматическое  определение  сетевых  драйверов  и  их  автоконфигурацию  (при
наличии  DHCP-сервера).  NETWORK=user  позволяет  после  детекта сетевой карты
задать  вручную  некоторые  параметры  (типа  скорости 10/100/1000 Mbit, etc).
Правда,  после  такого  выбора  (и вообще, после интерактивного запроса/ответа
юзера,  типа  Y/N) после загрузки системы перестает работать клавиатура -- это
известная, и, пока не решенная, проблема.

     42)  Отключение  MMOS/2 (yes/no в главном меню загрузки) теперь работает.
До  этого,  при  старте  WPS и генерации объектов рабочего стола, когда MMOS/2
отключено,  вторая  копия  pmshell.exe  зависала  (все треды blocked, согласно
WatchCat-у).  Оказалось, дело в том, что !:\mmos2\dll оставалось прописанным в
LIBPATH  и оно пыталось что-то оттуда грузить, и это вызывало блокировку треда
WPS.  (Часто  такое бывает при ошибках в .rc-файлах, но в данном случае, таких
ошибок не было).

     43)  Добавлен  FreeType  IFI  (Inteligent  Font  Interface)  font driver,
спасибо Alex Taylor.

     44)  rc-файлы. Служат для генерации объектов рабочего стола и регистрации
классов.   Кроме  того,  позволяют  в  ini-файл  записать  произвольный  ключ.
Некоторые  ключи,  добавленные  таким образом, служат как скрипты, исполняемые
WPS,   выполняющие   такие  действия  как  регистрация/дерегистрация  классов,
создание/удаление/обновление объектов, замена одного класса на его наследник и
т.  д.  Коллекция  .rc-файлов  запакована  в  \tools\rc.zip,  и  при  загрузке
распаковывается  на  рамдиск.  Также  копия  ее  же  лежит  в \tools\rc\... на
флешке/CD  для  удобства  редактирования.  Данная  коллекция позволяет на лету
генерировать   различные  десктопы.  Для  работы  с  .rc-файлами  используется
xmakeini  от  Ульриха  Мёллера  (автора  XWP).  Так как буквы дисков на разных
машинах  могут  быть  разные, и каталоги программ тоже могут быть изменены под
нужды   пользователя,  то  в  .rc-файлах  автор  xmakeini  предусмотрел  набор
подставляемых   переменных.   Подставляемые  переменные  записываются  в  файл
%bootdrv%\var\tmp\paths.sed с записями вида:

s/@variable@/value/

например:

s/@VIDEODRIVER@/GRE2VMAN/
s/@:/Z:/
s/!:/K:/
s/#:/r:/
....

     paths.sed  указывается  в параметре "-s" программы xmakeini. Для удобства
используется  враппер  \tools\bin\mkini.cmd  для  xmakeini. У скрипта-враппера
есть конфигурационный файл \tools\rc.cfg. Он содержит строки вида:

rc.filename = 'yes' (или 'no')

     Этот  конфиг  интерпретируется  REXX-ом  при  помощи инструкции interpret
построчно,  в результате чего в mkini.cmd импортируется стем "rc.", содержащий
информацию,  применять  данный .rc-файл к .ini-файлу, или отключить его. (Если
rc.filename  =  'yes',  то  filename.rc  применяется к указанному .ini-файлу).
Вызовы   mkini.cmd   вставлены   в   \tools\bld.cmd,   где   они  могут  также
включаться/отключаться   согласно   переменным   окружения   (например,   если
переменная   среды  mmos2=no,  то  вызов  mkini.cmd  для  *.rc,  относящихся к
мультимедиа, обходится через условный оператор.).

     45)   pat.cmd   это   скрипт-враппер  для  patch.exe  (переименованного в
os2patch.exe, чтобы избежать конфликтов с GNU patch). Он служит для применения
(бинарных)  патчей к драйверам во время загрузки системы. В качестве аргумента
этому  скрипту  указывается  первым  параметром  путь  к директории, где лежит
patch.dat.   И,   опционально,  вторым  параметром  указывается  имя  драйвера
(Driver),  который  надо патчить. Если второй параметр непуст, то внутри файла
patch.dat  ищется  строка  "FILE  file.os2"  драйвера и file.os2 заменяется на
Driver.  На  этом  диске загружаемые NDIS драйверы сначала переименовываются в
ndisX.os2,  и  потом  к  ним  может применяться патч. Вот для этого изменяется
строка  "FILE  ..."  в  файле  патча.  В config.sys для простоты вставлены три
строчки:

device=@:\ibmcom\macs\ndis1.os2
device=@:\ibmcom\macs\ndis2.os2
device=@:\ibmcom\macs\ndis3.os2

     Причем,  в  config.sys  они  остаются  неизменными,  но взамен этого, все
драйверы  копируются  на  рамдиск  в  \ibmcom\macs\...  и  переименовываются в
ndisX.os2.

     46)  Если кто еще не заметил, достаточно давно WPLaunchPad был заменен на
BubblePad  от  Chris  Wohlgemuth. Он выглядит более эстетично, занимает меньше
места,  а  также  содержит  несколько  новых  настроек.  Кроме  того,  сделана
поддержка  тултипсов  для  кнопок,  отсюда и название (от bubble help). В этом
диске  добавен  еще  один  класс-расширитель,  от  Lars  Erdmann. На этот раз,
расширяется класс Hardware Manager. Класс-расширитель называется HWMan.

     47)  Каталоги  Desktop  и  Nowhere  из корня загрузочного диска (рамдиск)
перемещены в z:\var\wps

     48)  Добавлена  поддержка веб браузера QupZilla (достаточно каталог с ним
скопировать  в  \tools  и  включить  dtopt.rc  в \tools\rc.cfg. Лишние строчки
отсутствующих  у вас программ можно закомментировать в dtopt.rc обычным REXX/C
знаком комментария /* ... */)

     49)  XWP  обновлен  до  версии  1.0.9.  На XCenter по умолчанию добавлены
виджеты   "IP   Monitor",   "Sentinel  memory  watcher",  "Extetnded  SysTray"
(последний используют многие QT приложения). Добавлен свой рисунок для XButton
;)  А также, в зависимости от выбранного primary NIC, он делается текущим в IP
Monitor-е. (См. Setup string для XCenter в %lang%\xwp.rc)

     50) os2ahci.add может быть добавлен из бетазоны, либо Community Edition с
Хоббеса.  Для этого надо в ramboot.cfg откомментировать строчку его загрузки и
скопировать  драйвер  в  \os2\boot.  К  сожалению,  Community драйвер довольно
староват. :(

     51)  Также,  довольно давно с диска успешно запускаются разные утилиты из
папки   Programs\Utilities.   Также,  1-2  релиза  назад  был  сделан  (но  не
задокументирован)   запуск   стандартных   бимерских  игр.  Игры  не  хотелось
переносить  полностью  на рамдиск (как на eCS Demo disk-е, где Pixel и Firefox
переносились  на  рамдиск  --  на мой взгляд, мягко говоря, неудачное решение,
жрущее  много  памяти).  А  игры  хранят  настройки  в  бинарных  .ini-файлах,
находящихся  в  каталоге  \os2\apps,  как  и  сами  игры.  Так как наш бутдиск
предназначен  не  только для работы с флешки, но и с CD (который readonly), то
хранение изменяемых данных в каталоге программы -- это очень печально. Поэтому
было придумано три решения;

     a)   Использовать   tvfs   и   создать   путь  поиска,  повесив  на  одну
tvfs-директорию  путь  поиска из двух директорий, одна из которых находится на
рамдиске,  вторая  на  CD/flash  носителе.  Причем,  рамдиск  впереди  и имеет
приоритет. В результате, если на CD/флешке нет файла, то он создается "впереди
пути  поиска",  т.е.,  на рамдиске. Т.е., есть два "слоя" файлов, "верхний" из
которых с возможностью записи, и "нижний", который только для чтения. Так была
решена  проблема  с  WinOS/2  --  сама  WinOS/2  на  флешке/CD,  а ini-файлы и
*.grp-файлы  на  рамдиске.  Однако,  способ с tvfs плох тем, что он требует PM
(tvctl.exe  тянет  за  собой  PM-ные  DLL-ки).  Поэтому  под  tshell-ом оно не
заработает. :(

     b)  Следующий способ использовался с IBM-овскими играми из \os2\apps. При
этом,  .ini-файлы  копировались  на рамдиск, патчились, и игруха запускалась с
флешки/CD,  имея текущей директорию с настройками в .ini. Еще одна проблема --
буквы  дисков внутри ini-файлов. Для Klondike и Mahjongg эти буквы находятся в
путях  к файлам (например, звуковым), в виде строкового ключа в .ini. В случае
же  Chess,  там  одна  бинарная структура (точнее, бинарный ключ в .ini-файле,
который  содержит  массив  структур,  формат  которых неизвестен). Но там пути
находились  по  смещениям,  шаг  которых был равен размеру структуры. Поэтому,
для Klondike и Mahjongg дело решилось генерацией .ini из .rc-файлов, а вот для
Chess пришлось взять готовый .ini и пропатчить. :(

     c) Портированные с UNIX/Linux программы хранят пользовательские настройки
в   %home%.   Поэтому,   назначив  %home%  на  %bootdrv%\var\home\default  (на
рамдиске), получаем аналогичный результат. Например, Arora по умолчанию хранит
весь  профиль  пользователя,  с  закладками  и кешем браузера, в %home%. А вот
QtWeb  зачем-то  был  спортирован так, что все файлы находятся в поддиректории
основного  каталога  программы.  В  результате,  програму "приручитть" пока не
удалось. QupZilla же ведет себя аналогично Arora'e, поэтому с ней тоже проблем
нет.

Добавление от 15.12.2014:

     52)   Аналогично  вендовым  драйверам  для  GenMac,  осёвые  драйвера  из
%sysdrv%\ibmcom\macs   (CD/флешка)  запакованы  в  .zip-архив  drv.zip,  чтобы
занимать  меньше места. Теперь только нужные из них распаковываются на рамдиск
(%bootdrv%\ibmcom\macs). Вместе с детектом сетевой карты и распаковкой windows
драйверов,  это  делается  также  в скрипте \tools\gennic.cmd (Который, в свою
очередь, вызывается из \tools\bld.cmd).

     53)  В  \tools\klibc  добавлены GNU coreutils, новые версии gcc runtime и
klibc.  Также,  в  папку  "Настройка  системы"  добавлен  объект  "Klibc paths
rewriters"  (Для  замены  "/etc"  на  %etc%,  /tmp  на рамдиск и тому подобных
hardcoded юниксоидных путей).

     54) Узнав об открытии исходников Styler/2 (aka Smart Windows) под GPL v.3
Alessandro  Cantatore,  мы  включили  этот расширитель PM/WPS в наш диск. (при
желании  можно  отключить  через  \tools\rc.cfg, заменив rc.styler2 = "yes" на
"no")

     55)  Было  обнаружено,  что TCP/IP в окне DOS (и WinOS/2) работает, когда
его  компоненты  грузятся с флеш-диска или HDD, но не работает ("TCPIP for DOS
is probably not running..." при попытке пропинговать что либо, даже 127.0.0.1)
при  загрузке  vdostcp.vdd  (VDD)  и  vdosctl.exe (демон) с CD, но vdosctl.sys
(досовый  драйвер,  запускаемый  внутри  VDM)  с рамдиска. При этом первые два
компонента нормально грузятся, судя по WatchCat. Оказалось (сюрприз!), что все
три компонента следует грузить с RAM-диска, тогда все работает.

     56)  Вдобавок  к  VPC  additions, на диск теперь добавлены VBox additions
(выбираются  нажатием  на  клавишу  "a"  --  none/VPC/VBox).  Теперь  работает
вбоксовый  видеодрайвер,  драйвер  мыши, и интеграция клипборда,  но  на  данный  
момент нет IFS для монтирования shared folders.

     57)  Добавлен  выбор  драйвера  мыши:  AMouse/IBM mouse. Драйвера мыши из
аддишензов VPC и VBox выбираются отдельно при выборе аддишензов VPC/VBox.

     58)  Для  сохранения конфигураций XWP Hook (XPager, hotkeys etc.) Написан
REXX  скрипт  dumpkey.cmd.  Он  генерирует  другой  скрипт  для восстановления
конфигурации  при  новой  загрузке, пишет его на stdout. Затем сгенерированный
скрипт    может    вызываться    при    старте   системы   ("call   xwphook" в
\tools\startup.cmd).  Например,  XPager  по дефолту имеет большой размер и 3x2
больших  превьюшек  экранов.  После этого запускается \tools\bin\xwphook.cmd и
задает  геометрию  XPager  8x3  и  прочие  настройки XWP Hook типа скользящего
фокуса, горячих клавиш. Т.е., настраиваем требуемую конфигурацию через объекты
из папки "Настройка системы", затем сохраняем:

[n:\tools\bin] dumpkey.cmd >xwphook.cmd

(предварительно забекапив xwphook.cmd)

     59) Для случая загрузки с danidasd.dmd (который нужен обычно для загрузки с флешки)
Был добавлен драйвер-фильтр partfilt.flt, преобразующий разделы на жестких дисках в виртуальные 
жесткие диски с единственным разделом на них. Теперь видны все разделы на жестких дисках
машины, включая случай с несколькими primary разделами. (DOS, OS/2 версий до 4.0, 
Windows 9x видят только "свой" primary раздел. Теперь видны все разделы.)


Добавление от 07.02.2015:
     
     60) Заработала TVFS под t-shell (она использует две Win*-функции, работающие
с очередями сообщений). Для этого используется PMWIN.DLL (DLL-заглушка от zuko. Бинарники
TVFS были запатчены при помощи renmodul.exe (берется с Хоббеса). При этом, DLL была 
переименована в FMWIN.DLL и все ссылки на нее из TVFS запатчены, используя это имя.)

     61) Теперь сеть, и wi-fi в частности, (а именно, wpa_supplicant и ISC DHCP клиент) 
заработали под t-shell, т.е., сеть теперь везде работает. (Хотя в этих двух программах
есть ссылки на PMWIN, но они не вызываются, поэтому патчить ничего не пришлось).

     62) Через TVFS удалось запустить Win-OS/2 (на CD/флешке неизменяемые файлы,
а на рамдиске изменяемые) и под tshell.

     63) Для WinOS/2 реализована установка драйвера GRADD/SVGA256 VESA в зависимости
от среды: PM или tshell.

     64) Починен апплет из "Настроек системы" "Переключение раскладки". Для этого оказалось 
достаточно добавить в каталог \os2 отсутствующие файлы "user.dic" и "ibmdict.dic". Кто бы мог
подумать... (До этого при двойном щелчке на апплете десктоп на некоторое время замораживался
и было слышно пиликанье на спикер).

     65) В XWP добавлены файлы "xwp\bin\xfldr007.dll" и "xwp\help\*.007.*" В результате,
при выборе LANG=ru_RU в меню FreeLDR, руссифицируется часть меню и выбирается русское 
руководство пользователя (которое переведено тоже лишь частично)


Добавление от 06.01.2016:

     66) Создание десктопа вынесено в отдельный скрипт crdesk.cmd, a mkini.cmd для эффективности
переделан в его внутреннюю процедуру. До этого список всех rc был захардкоден в скрипты, теперь же
список всех юзерских rc сделан в виде списка строк, содержащих имена .rc-файлов без расширения.
Список строк содержится в rc.cfg и разбит на несколько строк для того, чтобы преодолеть 
ограничение на длину одной строки. rc.cfg теперь содержит список всех .rc и для каждого
флаги (включен/выключен, или yes/no). Пути к программам содержатся в paths.sed. Для 
каждой программы переменная @someprog@ указана в его .rc-файле. Эта же переменная должна
быть в paths.sed в виде 's/@someprog@/путь-к-программе/', т.е., все вхождения этой переменной
в .rc-файле заменяются на "путь-к-программе". Таким образом, для добавления нового .rc-файла
достаточно занести его в rc.cfg (добавить в список строк и прописать rc.someprog = 'yes',
где someprog.rc-имя .rc-файла программы) и прописать путь к ней в paths.sed.

     67) Теперь данный диск содержит инфраструктуру для UNIX портов на базе rpm/yum. В том числе,
Qt4 и kLibc, и другие утилиты теперь не смешаны с OS/2 утилитами в \tools, а выделены в отдельные
ветви \usr, \var и \etc.

     68) Netscape 4.0.4 / 4.6 может быть использован в качестве облегченного веб-браузера. Также,
в поставке диска есть Arora. Оба браузера могут быть установлены как default browser, для этого 
надо откомментрировать / закомментировать соответствующие строки в paths.sed. Paths.sed может 
теперь содержать знаки комментария (точка с запятой) или пробелы / пустые строки.

     69) Добавлены новые .rc-файлы для Mesa2, Peer, Lotus SmartSuite, HomePage Publisher,
DragText, FFST/2, HobLink X11, PMX, IPSpool, lSwitcher, Z!, QuPlayer/2, SpeedSoft Sibyl, etc.

     70) Добавлен Doodle screensaver.

     71) Обновлены: Lucide, XWP, HWMAN

     72) Сделано разделение на утилиты "ядра" дистрибутива, находящиеся в \tools, и юзерские
добавления в \apps

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

Sincerelly yours,
Team BOOT/2,
2010-08-22

благодарности:
фирме IBM за OS/2,
Daniela Engert за DaniS506 и DaniATAPI с DaniDASD,
VicTor Smirnoff и Alexey Timoshenko - нашим предшественникам ;)
Karl Olsen и Andrew Belov - за ramfs.ifs,
Veit Kannegieser за множество полезных программ,
Phoenix project (OS/4) team за новое ядро,
dixie за QS_INIT (aka Tetris)
osFree team за FreeLDR и новый метод загрузки
Yoda за FreeInst ;-)
Knut St. Osmundsen (aka bird) за os2bird.asm (находящий указанную точку входа
в указанном модуле; авторы bootos2.mdl расширили его, добавив воз-
можность искать точки входа в NE-модулях; в оригинальном была
поддержка только формата LX),
Paul Smedley и другим портерам за WPA supplicant, ISC DHCP клиент,
а также за множество QT и вообще, UNIX приложений,
авторам GRUB за multiboot specification и заимствованные
куски кода,
Adam Lackorzynski за патч к GRUB, который
был успешно портирован в FreeLDR,
и авторам всех программ на этом диске.

Disclaimer: Все программы, использованные в данном диске,
являются собственностью их законных владельцев.
Данный диск может легально использоваться владельцами
лицензий на IBM OS/2 или eComStation. Если у вас нет
такой лицензии, то вы используете этот диск на свой страх и риск.
Мы не претендуем на права "борцов за копирайт"
и не несем ответственности за проблемы, возникшие
в ходе использования этого диска,
все программы получены из различных файловых архивов
и предоставляются согласно сложившейся практике as is,
все это предоставляется сугубо для личного использования,
for fun и не претендует на получение выгоды ;-)

PS: Все программы на данном диске являются либо свободными
(GNU GPL (например, сам FreeLDR), freeware, public domain),
либо shareware trial (FC/2), либо abandonware (GTU40, Watchcat).

2016-09-05

Загрузить образ Team BOOT/2 CD выпуск 2016.10.21

За диском обращайтесь на irc-канал #os2russian.

Как загрузиться с USB: скопировать содержимое на флешку/винт, и потом прописать бутсектор и MBR при помощи \tools\freeinst. Для восстановления образа на флэш-накопитель, вы можете исползовать DFSee disk, partition and filesystem tool.

Так как я не являюсь автором этих дисков, я не осуществляю никакой поддержки по ним. Поддержка по данным загрузочным дискам осуществляется на irc канале #os2russian, например irc://irc.inet.tele.dk/os2russian - или https://chat.efnet.org/. Вы може задавать вопросы по английски, или если вы пишете по-русски, убедитесь что ваш irc-клиент использует кодировку koi8-r.


Контакты


E-Mail: bearwindows_at_fastmail_dot_com | Последнее обновление: 1 декабря 2017