Booting to ArcaOS Desktop on a USB Stick
Article Info | |
---|---|
Author | Peter Rehfisch |
Date | 2024-11-30 - Version 3 |
OS Version | ArcaOS 5.1.x |
Companion File | N/A |
Source | N/A |
A USB stick that can boot to a OS/2-ArcaOS desktop is a useful tool to help with backup and maintenance on an ArcaOS system. This article outlines a method for achieving this, with the option to create a USB stick which will boot on Legacy BIOS or UEFI, or both.
With ArcaOS 5.1 , you will have the ability to setup a USB stick for both UEFI and Legacy BIOS booting, and if you have an earlier version of ArcaOS, you will be able to setup for Legacy booting only.
This method uses a small FAT32 volume on the USB stick for UEFI booting (the UEFI volume), a small FAT16 volume for Legacy BIOS booting (the BIOS volume), and a larger HPFS/JFS volume for the maintenance volume once the early stages of booting have finished, with the desktop being preserved despite re-booting.
The USB stick preparation process consists of setting up the USB stick, preparing the maintenance volume, preparing the UEFI booting (if required), and preparing the BIOS booting (if required).
- Requirements
- a USB stick of at least 4GB capacity
- a computer capable of booting an operating system from a USB stick
- a version of ArcaOS
- installation of the ArcaOS FAT32 driver, if booting to UEFI
- Hayo Baan's Bootable
This process, when writing to a USB stick, is quite safe, but if any of the partitioning, formatting, deleting or other activities are inadvertently performed onto an important drives or partitions it could mean major problems for the system, so be sure which of the drives is the USB stick, the number of megabytes on the USB stick, and the drive letters of the partitions on it. Backup the system files before starting this procedure. Ejecting all USB sticks from the computer, apart from the target USB stick, will help avoid the wrong USB device being wiped.
When the word DANGER! appears in the text check carefully that all the parameters of the imminent commands are set correctly or serious damage could occur to the system. You have been warned.
Some of the sections in this guide have italicized text that can be dragged and dropped, or cut and pasted, into a command line window, but check the first lines of each sequence to see if they require changing for each system, e.g. SET BOOTDRIVE=C: will not be correct for every system.
1. Remove all other USB sticks from the PC and insert the USB stick of at least 4GB capacity. Backup all useful files on the USB stick to a hard drive as this procedure will erase all files on the USB stick.
2. If not done so previously, decompress the ArcaOS archive (something like ArcaOS-5.1.0-en.7z) to a directory and open an OS/2 command prompt in that directory.
3. DANGER! Check carefully the USB stick is selected, and not another drive. Prepare the USB stick ArcaOS installation. If the ArcaOS version is greater than 5.0.5, this will probably mean running
dfsanos2.exe -q run aosboot.dfs
and select the USB stick from the list of drives (it will probably be the last on the list).
When this completes, the USB stick may contain one volume for booting to UEFI and will contain a volume for booting to Legacy BIOS. When it says
"Eject stick, reinsert, copy ArcaOS ISO to the ARCA_ISO directory on the stick as 'ARCAINST.ISO' to boot from it. "
then use software to eject the stick, remove it and reinsert but do not copy the file.
4. Use a preferred disc partitioning software (e.g. minilvm, or MB2 on the Drives object and select Manage volumes...). Select the USB stick
DANGER! Make sure the USB stick is selected. It may have a TYPE EF volume and should have a FAT16 volume on it, along with some free space.
Create the maintenance volume in the Free Space. Select Standard volume Assign the Drive Letter Y: (unless this conflicts with an already assigned drive, but remember the letter)
Select an appropriate volume size - at least 100MB, but unless other operating systems might be installed, all the free space could be used.
Check Use Logical volume
Save the changes and exit the program
5. DANGER! Check you are selecting the newly created volume. Format the Y: volume - I find JFS is more robust, but HPFS may suffice.
format Y: /FS:JFS
6. Setting up the files on the maintenance volume can be a complex procedure, but it can be made very simple by using the excellent Bootable software created by Hayo Baan. Bootable is a REXX command file that is run with one or more bootable.? files as parameters. It will format the maintenance volume on a USB stick and transfer files from a hard drive to create a desktop-ready environment on the USB stick. Therefore download bootAble6_10_3.zip
Unzip the file. Create a new file called bootable.usb and use a text editor to copy and paste the following text
; Additional SEARCHPATH directories (separate by a semicolon) ; Note: Each time this setting is used, the mentioned directories are ; added to the (beginning of) SEARCHPATH so you can use this setting ; multiple times without the varValue construction. ADDTOSEARCHPATH='' ; Add Air-Boot installer and boot selector? ; Note: As a convenience, an airboot2.cmd command is created that ; will allow you to start the air-boot installer (airboot2.exe) ; without having to first go to the directory where the airboot.bin ; file is located. AIRBOOT='No' ; Automatically format the maintenance volume (HPFS)? ; If set to 'NO', the user is asked for confirmation or to quit bootAble ; Note: To guarantee the correct working of the script, it is highly ; recommended to format the maintenance volume ; Note: If you use a different language version of OS2/eCS then you may ; need to set FORMATMAINTENANCERESPONSE to something other that 'Y' FORMATMAINTENANCE='Yes' ; Use JFS as file system for the maintenance volume instead of HPFS? ; Note: This only works for eCS 2.0 and then only when the current boot volume ; is also JFS. FORMATMAINTENANCEJFS='Yes' ; Drive for the maintenance volume WRITERDRIVE='Y:' ; WPS support? WPS='Yes' ; Boot to WPS? WPSBOOT='Yes' ; Add basic WPS applications? WPSAPPS='Yes' ; Add Enhanced Editor (EPM) Application? WPSEPM='Yes' ; Add regedit2 Application? WPSREGEDIT2='Yes' ; Add XWorkplace? WPSXWP='Yes' ; Add truetype font support? WPSTTFSUPPORT='Yes' ; Add unicode font support? WPSUNIFONTSUPPORT='Yes' ; Extra font files (will be added to /psfonts) WPSEXTRAFONTFILES='' ; Extra PFM font files (will be added to /psfonts/pfm) WPSEXTRAPFMFONTFILES='' ; Videodriver To use for WPS? ; The following drivers are supported: ; 1: Default VGA (640x480x16) ; 2: Gengradd ; 3: SNAP SE VIDEODRIVER='2' ; Video resolution to use for WPS? ; The following resolutions are supported: ; 0: Default ; 1: 640x 480 ; 2: 800x 600 ; 3: 1024x 768 ; 4: 1280x1024 ; 5: 1600x1200 VIDEORESOLUTION='4' ; Color depth to use for WPS? ; The following color depths are supported ; 1: 8 bits (256 colors) ; 2: 15 bits (32K colors) ; 3: 16 bits (64K colors) ; 4: 24 bits (16M colors) VIDEOCOLORDEPTH='4' ; Font size to use for command-line windows? WPSSHELLFONTSIZE='13' ; Enable WPS full window drag? WPSFULLWINDOWDRAG='Yes' ; Add OS2 command-line applications? ; The following applications will be installed: ; Always: ATTRIB, CHKDSK, FORMAT, MODE, MORE, RMVIEW, TEDIT, XCOPY ; HELP, HELPMSG ; No LVM: FDISK ; FAT32: F32STAT ; Note: See section "DESTINATION configuration options" for specifying the ; destination of the files (e.g., CD or boot image) OS2APPS='Yes' ; Add additional OS2 command-line applications? ; The following applications will be installed: ; Always: EAUTIL, EJECT, FIND, MAKEINI, PATCH, SETBOOT, SYSLEVEL ; UNDELETE, UNPACK, UNPACK2, ZIP, UNZIP ; HPFS: CACHE ; HPFS386: CACHE386, CSBKEHFS, DLIMFIX ; JFS: CACHEJFS, CHKLGJFS, CLRBBLKS, DEFRAGFS, EXTENDFS, JFSCHK32 ; Note: See section "DESTINATION configuration options" for specifying the ; destination of the files (e.g., CD or boot image) OS2EXTRA='Yes' ; Add the EMX Runtime? EMXRT='No' ; Add the GCC Runtime? GCCRT='No' ; Add REXX support? REXX='Yes' ; Enable Object REXX? OBJECTREXX='No' ; Use LXLITE on files copied to CD? LXLITE='No' ; Display boot messages? (ALT-F2) BOOTMESSAGES='Yes' ; Contents of STARTUP.CMD file STARTUPCMD='' ; Extra config.sys lines, added at the end of the config.sys file ; In non-interactive mode: use the string variable CRLF between lines EXTRACONFIGSYS='' ; ACPI support? ACPI='Yes' ; Autocheck HPFS file systems? HPFSAUTOCHECK='Yes' ; Autocheck JFS file systems? JFSAUTOCHECK='Yes' ; Add support for Ramdisk? RAMDISK='No' ; Add networking (NETBIOS or TCP/IP) support? NETWORKING='No' ; List of fully qualified extra files to be placed in the os2 directory ; of the CD ; Note: See section "DESTINATION configuration options" for specifying the ; destination of the files (e.g., CD or boot image) EXTRAFILES='BACKUP.EXE RESTORE.EXE XCOPY.EXE' ; List of fully qualified extra files to be placed in the os2\dll ; directory of the CD EXTRADLLFILES=varValue('EXTRADLLFILES'), ifexists('bdcalls.dll',''), ifexists('chkdsk32.dll',''), ifexists('gengradd.dll',''), ifexists('ibmgpmi.dll',''), ifexists('pmi1002.dll',''), ifexists('pmi1023.dll',''), ifexists('pmi102b.dll',''), ifexists('pmi102c.dll',''), ifexists('pmi10c8.dll',''), ifexists('pmi5333.dll',''), ifexists('prodmri.dll',''), ifexists('qemuimg.dll',''), ifexists('rxvidcfg.dll',''), ifexists('s3pmi.dll',''), ifexists('sbfilter.dll',''), ifexists('svga.dll',''), ifexists('svgainst.dll',''), ifexists('ucdfs.dll',''), ifexists('untfs.dll',''), ifexists('usbcalls.dll',''), ifexists('uudf.dll',''), ifexists('wppansys.dll',''), ifexists('wpstkmou.dll',''), ifexists('wpstkmri.dll',''), ifexists('wpvidsys.dll',''), ifexists('wpvidsys.dll','') ; List of fully qualified extra files to be placed in the os2\help ; directory of the CD (only when WPS support is enabled) EXTRAHELPFILES='' ; Allow access to >16MB early in boot? ; Note: Only supported with recent kernels. ; Warning: "AHA154X.ADD may do bad things to your system. Don't even ask." ; Warning: "There may be some settings of HPFS386 cache that are incompatible." EARLYMEMINIT='No' ; Add DLLBASING=OFF to the config.sys? ; Note: this may free up some shared memory, providing more memory to a ; bootAble system DLLBASINGLINE='Yes' CREATEBOOTCD='No'
Look through the text, especially check that WRITERDRIVE='Y:' is the maintenance volume, and change anything incorrect. Lines commencing with a semi-colon are comments, and not processed.
Before running bootable.cmd, browse through the files unzipped from the bootable archive and consider using them to add additional applications. Each additional file is added to bootable.cmd as an additional parameter. So a basic installation would be, from a commandline,
bootable.cmd bootable.usb
but more applications can be added if running
bootable.cmd bootable.usb bootable.wps bootable.dfsee
Read through the setup files, as some variables e.g. in bootable.dfsee, setting up variables such as APPSRCZIPWPI_DFSEE by including the line APPSRCZIPWPI_DFSEE='F:\temp\dfsee14x_warpin.wpi' in the bootable.usb file, and ensuring bootable.usb is in the parameter list prior to bootable.dfsee
Files can be added by editing the lines in bootable.usb e.g.
EXTRADLLFILES=varValue('EXTRADLLFILES'), 'libc066.dll', 'libc063.dll' EXTRAFILES=varValue('EXTRAFILES') ||' SHUTDOWN.EXE ATTRIB.EXE TAR.EXE BLDLEVEL.EXE PMREXX.EXE PMDLL.EXE' rc=defaultIfNotSet('APPSRC_PCI',sysbootdrive()||'\sys\install\detect') EXTRADIRECTORIES=EXTRADIRECTORIES+1 EXTRADIRECTORY.EXTRADIRECTORIES='\PROGRAMS\PCI' EXTRADIRECTORYDESTINATION='CD' EXTRADIRECTORYFILES.EXTRADIRECTORIES=APPSRC_PCI||'\*.*'
Save the changes to bootable.usb
6. DANGER! This step will format the volume referred to in bootable.usb as WRITERDRIVE. Ensure this refers to the maintenance volume.
Run the bootable program
bootable.cmd bootable.usb <other optional bootable files>
If notified
ERROR: File not found ????????.??? Abort program? ([Y]es/[N]o/[Q]uit without cleaning up) [Y]
then press 'N'
7. If not booting UEFI, go to step 13
8. The files on the UEFI volume may not function during booting if fragmented, so avoid deleting and copying single files. Copy the files in the root directory of the UEFIboot volume to a hard drive or RAM drive, then delete the config.sys file from boot2.bin
SET UEFIdrive=i: copy %UEFIdrive%\*.* zip boot2.bin -d config.sys
9. Use a text editor to open config.sys in this directory. Delete the contents and paste the following text into the file.
Check the text for any problems. If the maintenance volume is not Y: then change all references from Y: to the drive of the maintenance volume
rem CONFIG.SYS for booting from UEFI to ArcaOS desktop rem ### reserve resources ^DEV_RESERVE:false:rem ^BASEDEV=RESERVE.SYS ^DEV_RESERVE_SWITCH:**********************************************************************^ rem ### Patch miniVDM int10/13 creation code for uncommon memory situations ^SYS_MODE_EFIBOOT:true:rem ^BASEDEV=PMVDMCC.SYS rem ### ACPI support ^SYS_ACPI:false:rem ^PSD=ACPI^SYS_ACPI_DEBUG:true:DBG^.PSD /MAXCPU=1 ^SYS_ACPI_PARAM:********************************************^ rem ### DBCS font support ^NLS_DBCS:false:rem ^BASEDEV=FONTMEM.SYS rem ### keyboard and check disk helper BASEDEV=IBMKBD.SYS BASEDEV=CHKDSK.SYS rem ### USB base and host controller interface support ^DEV_USB:false:rem ^BASEDEV=USBD.SYS /I13^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3,4:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3,4,5:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3,4,5,6:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3,4,5,6,7:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3,4,5,6,7,8:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3,4:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3,4,5:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3,4,5,6:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3,4,5,6,7:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3,4,5,6,7,8:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3,4:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3,4,5:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3,4,5,6:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3,4,5,6,7:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3,4,5,6,7,8:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3,4:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3,4,5:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3,4,5,6:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3,4,5,6,7:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3,4,5,6,7,8:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ rem ### USB human interface ^DEV_USB_HID:false:rem ^BASEDEV=USBHID.SYS^MISC_PROB_VERBOSE:true: /V^ rem ### legacy 3.5"/5.25" floppy disk BASEDEV=IBM1FLPY.ADD rem ### I2O transport ^DEV_I2O:true:BASEDEV=I2OXPORT.SYS^ rem ### Pause (20s) for initialization of SCSI adapters if necessary ^DEV_SCSI:false:rem ^BASEDEV=BOOTDLY.SYS rem ### ATA or SCSI hostadapters 1, 2, 3 BASEDEV=^DEV_HAB1_DRIVER:********^.ADD^MISC_PROB_VERBOSE:true: /V^ ^DEV_HAB1_SWITCH:*******************************************************^ BASEDEV=^DEV_HAB2_DRIVER:********^.ADD^MISC_PROB_VERBOSE:true: /V^ ^DEV_HAB2_SWITCH:*******************************************************^ BASEDEV=^DEV_HAB3_DRIVER:********^.ADD^MISC_PROB_VERBOSE:true: /V^ ^DEV_HAB3_SWITCH:*******************************************************^ rem ### generic INT 13h ^DEV_INT13:true:BASEDEV=IBMINT13.I13^ rem ### USB mass storage and USB CD-ROM ^DEV_USB_STORAGE:false:rem ^BASEDEV=USBMSD.ADD /REMOVABLES:^DEV_USB_MSD:*^ /FLOPPIES:^DEV_USB_FLOPPY:*^^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_STORAGE:false:rem ^BASEDEV=USBCDROM.ADD /CDS:^DEV_USB_CD:*^^MISC_PROB_VERBOSE:true: /V^ rem ### MemDisk / HD4Disk ^SYS_MODE_EFIBOOT:true:rem ^BASEDEV=MEMDISK.ADD^MISC_PROB_VERBOSE:false: /Q^^MISC_PROB_VERBOSE:true: /V^ ^SYS_MODE_EFIBOOT:false:rem ^BASEDEV=HD4DISK.ADD rem ### ATAPI filters ^DEV_ATAPI:2:BASEDEV=DANIATAP.FLT^^DEV_ATAPI:1,3:rem ^^MISC_PROB_VERBOSE:true: /V^ ^DEV_ATAPI:3:BASEDEV=IBMATAPI.FLT^^DEV_ATAPI:1,2:rem ^^MISC_PROB_VERBOSE:true: /V^ rem ### GPT filter BASEDEV=GPT.FLT /U:8^MISC_PROB_VERBOSE:true: /V^ rem ### device management BASEDEV=OS2DASD.DMD BASEDEV=OS2LVM.DMD rem ### locale settings: codepage, country, keyboard layout, Unicode language support, locale support, IPF charset CODEPAGE=^MISC_LOC_CPVALUE:*********^ COUNTRY=^MISC_LOC_CCVALUE:***^,^DRIVE_MEM:*^:\COUNTRY.SYS DEVINFO=KBD,^MISC_LOC_KBDNAME:*****^,^DRIVE_MEM:*^:\KEYBOARD.DCP SET ULSPATH=^DRIVE_MEM:*^:\LANGUAGE SET LANG=^MISC_LOC_LOCALE:*****^ SET TZ=^MISC_LOC_TIMEZONE:***********^ SET IPF_KEYS=^MISC_LOC_CHARSET:********^ rem ### serial device support (not enabled by default) ^DEV_FWATCH:false:rem ^DEVICE=\PSCOM.SYS ^DEV_FWATCH:true:DEVICE=\FWATCH.SYS 1^ rem ### HPFS support, CRITICAL ORDER! IFS=^DRIVE_MEM:*^:\HPFS.IFS /CACHE:512 rem ### unzip subdirectories with additional drivers, etc, CRITICAL ORDER! DEVICE=^DRIVE_MEM:*^:\CALL_EXE.SYS ^DRIVE_MEM:*^:\UNZIP.EXE -q USBEXTRA.BIN DEVICE=^DRIVE_MEM:*^:\ERASEFIL.SYS "^DRIVE_MEM:*^:\USBEXTRA.BIN" rem ### Unicode support, CRITICAL ORDER! DEVICE=\OS2\BOOT\UNICODE.SYS rem ### JFS support, CRITICAL ORDER! IFS=^DRIVE_MEM:*^:\JFS.IFS /CACHE:512 /LAZYWRITE:16,64,2 rem ### FAT32 support, CRITICAL ORDER! IFS=\OS2\BOOT\FAT32.IFS /CACHE:512 /H^MISC_PROB_VERBOSE:false: /Q^ CALL=\OS2\CACHEF32.EXE /F^MISC_PROB_VERBOSE:false: /S^ rem ### RAMFS required for browser ### IFS=^DRIVE_MEM:*^:\RAMFS.IFS /R /M:128M /DBCS^MISC_PROB_VERBOSE:false: /Q^ rem ### ISOFS support IFS=\STUBFSD.IFS ISOFS RUN=\OS2\ISOFSDMN.EXE rem ### CD file system and CD device management IFS=CDFS.IFS /C:8 /M:16 /W ^NLS_DBCS:false:/Q^ DEVICE=\^DEV_CDROM:********^.DMD^MISC_PROB_VERBOSE:false: /Q^^MISC_PROB_VERBOSE:true: /V^ rem ### miscellaneous drivers DEVICE=^DRIVE_MEM:*^:\TESTCFG.SYS DEVICE=\OS2\BOOT\DOS.SYS DEVICE=\OS2\BOOT\PMDD.SYS DEVICE=\OS2\BOOT\POINTDD.SYS ^SYS_MOUSE_DRIVER:1:rem ^DEVICE=\OS2\BOOT\MOUSE.SYS ^SYS_MOUSE_DRIVER:2:rem ^DEVICE=\SYS\BOOT\AMOUSE.SYS rem ### USB keyboard and mice ^DEV_USB_KEYBOARD:false:rem ^DEVICE=\OS2\BOOT\USBKBD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_MOUSE:false:rem ^DEVICE=\OS2\BOOT\USBMOUSE.SYS^MISC_PROB_VERBOSE:true: /V^ rem ### USB resource manager ^DEV_USB:false:rem ^DEVICE=\SYS\BOOT\USBRESMG.SYS rem ### erase file on MemDisk to save space DEVICE=^DRIVE_MEM:*^:\ERASEFIL.SYS "^DRIVE_MEM:*^:\OS2KRNL" rem ### path statements LIBPATH=.;^DRIVE_MEM:*^:\;^DRIVE_MEM:*^:\OS2\DLL;^DRIVE_MEM:*^\SYS\DLL;^DRIVE_MEM:*^\SYS\INSTALL;Y:\OS2\DLL;Y:\OS2\APPS\DLL;Y:\ SET PATH=.;^DRIVE_MEM:*^:\;^DRIVE_MEM:*^:\OS2;Y:\SYS\BIN;Y:\OS2;Y:\OS2\SYSTEM;Y:\OS2\APPS; SET DPATH=.;^DRIVE_MEM:*^:\;^DRIVE_MEM:*^:\OS2;^DRIVE_MEM:*^:\OS2\SYSTEM;Y:\;Y:\SYS\BIN;Y:\SYS\LANG;Y:\SYS\INSTALL;Y:\OS2;Y:\OS2\SYSTEM; rem ### command shell SET OS2_SHELL=^DRIVE_MEM:*^:\CMD.EXE SET COMSPEC=^DRIVE_MEM:*^:\CMD.EXE SET KEYS=ON SET PROMPT=[$r $b $p] SET DIRCMD=/v rem ### user shell SET RUNWORKPLACE=PMSHELL.EXE PROTSHELL=^MISC_START:3:cmd^^MISC_START:1,2,4:PMSHELL^.EXE rem ### help and information files SET HELP=Y:\OS2\HELP;Y:\SYS\HELP; SET GLOSSARY=Y:\OS2\HELP\GLOSS; SET BOOKSHELF=Y:\OS2\BOOK;Y:\SYS\BOOK; rem ### failure support and problem determination ^MISC_PROB_ERROR:true:rem ^SUPPRESSPOPUPS=^DRIVE_MEM:*^ AUTOFAIL=YES rem ### display driver DEVINFO=SCR,VGA,^DRIVE_MEM:*^:\VIOTBL.DCP SET DISPLAYTYPE=VGA ^SYS_GRADD:false:rem ^DEVICE=\OS2\GRADD.SYS ^SYS_MODE_EFIBOOT:true:rem ^SET VIO_^SYS_SVGA:true:S^VGA=DEVICE(^SYS_BVH_DEVICE:*^^NLS_DBCS:true:,BVHVGA2^) ^SYS_MODE_EFIBOOT:false:rem ^SET VIO_^SYS_SVGA:true:S^VGA=DEVICE(^SYS_BVH_DEVICE:*^) SET VIDEO_DEVICES=VIO_^SYS_SVGA:true:S^VGA ^SYS_GRADD:false:rem ^SET GRADD_CHAINS=C1 ^SYS_GRADD:false:rem ^SET C1=^SYS_GENGRADD:true:GENGRADD,SBFILTER^^SYS_GENGRADD:false:VBE2GRAD^ ^SYS_GRADD:false:rem ^^SYS_GENGRADD:true:rem ^SET GREEXT=PANOGREX rem ### INI files for PMSHELL SET USER_INI=Y:\OS2\OS2.INI SET SYSTEM_INI=Y:\OS2\OS2SYS.INI CALL=^DRIVE_MEM:*^:\OS2\LVM.EXE /Rediscoverprm rem ### system settings BREAK=OFF BUFFERS=90 CLOCKSCALE=4 DISKCACHE=512,LW DLLBASING=OFF ^DEV_NO_EARLYMEM:true:rem ^EARLYMEMINIT=TRUE FILES=40 FCBS=16,8 IOPL=YES MAXWAIT=2 MEMMAN=SWAP,PROTECT,NOPACK PAUSEONERROR=^MISC_PROB_ERROR:true:YES^^MISC_PROB_ERROR:false:NO^ PROTECTONLY=YES PAUSEONERROR=NO PRIORITY_DISK_IO=YES PRINTMONBUFSIZE=134,134,134 PROTECTONLY=YES RMSIZE=640 SWAPPATH=^DRIVE_MEM:*^:\OS2 2048 2048 THREADS=256 VIRTUALADDRESSLIMIT=1536 SET AUTOSTART=PROGRAMS,TASKLIST,FOLDERS,CONNECTIONS SET DEVICEFONTDISABLED=NO SET ETC=^DRIVE_MEM:*^:\var\etc SET HELP=^DRIVE_MEM:*^:\OS2\HELP;^DRIVE_MEM:*^:\SYS\HELP; SET IPF_KEYS=SBCS SET KEYS=ON SET LOGFILES=^DRIVE_MEM:*^:\var\log SET RESTARTOBJECTS=STARTUPFOLDERSONLY,REBOOTONLY SET SCCANBENUKED=1 SET SCKILLFEATUREENABLED=1 SET SHELLHANDLESINC=40 SET TMP=^DRIVE_MEM:*^: SET TEMP=^DRIVE_MEM:*^: SET TMPDIR=^DRIVE_MEM:*^: SET ULSPATH=^DRIVE_MEM:*^:\LANGUAGE
10. Save the changes and exit the text editor.
11. Delete the contents of the root directory on the UEFIboot volume and replace them with the 4 files on the hard drive
SET UEFIdrive=i: del %UEFIdrive%\boot?.bin del %UEFIdrive%\config.sys copy boot?.bin %UEFIdrive% copy config.sys %UEFIdrive%
12. If not booting to Legacy BIOS, go to step 14
13. For Legacy BIOS booting, edit a config.sys in the root directory of the BIOS volume. Remove any text and replace it with the following text
rem CONFIG.SYS for booting USB stick to Legacy BIOS rem ### reserve resources ^DEV_RESERVE:false:rem ^BASEDEV=RESERVE.SYS ^DEV_RESERVE_SWITCH:**********************************************************************^ rem ### Patch miniVDM int10/13 creation code for uncommon memory situations ^SYS_MODE_EFIBOOT:true:rem ^BASEDEV=PMVDMCC.SYS rem ### ACPI support ^SYS_ACPI:false:rem ^PSD=ACPI^SYS_ACPI_DEBUG:true:DBG^.PSD /MAXCPU=1 ^SYS_ACPI_PARAM:********************************************^ rem ### DBCS font support ^NLS_DBCS:false:rem ^BASEDEV=FONTMEM.SYS rem ### keyboard and check disk helper BASEDEV=IBMKBD.SYS BASEDEV=CHKDSK.SYS rem ### USB base and host controller interface support ^DEV_USB:false:rem ^BASEDEV=USBD.SYS /I13^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3,4:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3,4,5:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3,4,5,6:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3,4,5,6,7:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_XHCI:1,2,3,4,5,6,7,8:rem ^BASEDEV=USBXHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3,4:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3,4,5:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3,4,5,6:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3,4,5,6,7:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_EHCI:1,2,3,4,5,6,7,8:rem ^BASEDEV=USBEHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3,4:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3,4,5:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3,4,5,6:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3,4,5,6,7:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_UHCI:1,2,3,4,5,6,7,8:rem ^BASEDEV=USBUHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3,4:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3,4,5:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3,4,5,6:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3,4,5,6,7:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_OHCI:1,2,3,4,5,6,7,8:rem ^BASEDEV=USBOHCD.SYS^MISC_PROB_VERBOSE:true: /V^ rem ### USB human interface ^DEV_USB_HID:false:rem ^BASEDEV=USBHID.SYS^MISC_PROB_VERBOSE:true: /V^ BASEDEV=OS2AHCI.ADD rem ### legacy 3.5"/5.25" floppy disk BASEDEV=IBM1FLPY.ADD rem ### I2O transport ^DEV_I2O:true:BASEDEV=I2OXPORT.SYS^ rem ### Pause (20s) for initialization of SCSI adapters if necessary ^DEV_SCSI:false:rem ^BASEDEV=BOOTDLY.SYS rem ### ATA or SCSI hostadapters 1, 2, 3 BASEDEV=^DEV_HAB1_DRIVER:********^.ADD^MISC_PROB_VERBOSE:true: /V^ ^DEV_HAB1_SWITCH:*******************************************************^ BASEDEV=^DEV_HAB2_DRIVER:********^.ADD^MISC_PROB_VERBOSE:true: /V^ ^DEV_HAB2_SWITCH:*******************************************************^ BASEDEV=^DEV_HAB3_DRIVER:********^.ADD^MISC_PROB_VERBOSE:true: /V^ ^DEV_HAB3_SWITCH:*******************************************************^ rem ### generic INT 13h ^DEV_INT13:true:BASEDEV=IBMINT13.I13^ rem ### USB mass storage and USB CD-ROM ^DEV_USB_STORAGE:false:rem ^BASEDEV=USBMSD.ADD /REMOVABLES:^DEV_USB_MSD:*^ /FLOPPIES:^DEV_USB_FLOPPY:*^^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_STORAGE:false:rem ^BASEDEV=USBCDROM.ADD /CDS:^DEV_USB_CD:*^^MISC_PROB_VERBOSE:true: /V^ rem ### MemDisk / HD4Disk ^SYS_MODE_EFIBOOT:true:rem ^BASEDEV=MEMDISK.ADD^MISC_PROB_VERBOSE:false: /Q^^MISC_PROB_VERBOSE:true: /V^ ^SYS_MODE_EFIBOOT:false:rem ^BASEDEV=HD4DISK.ADD rem ### ATAPI filters ^DEV_ATAPI:2:BASEDEV=DANIATAP.FLT^^DEV_ATAPI:1,3:rem ^^MISC_PROB_VERBOSE:true: /V^ ^DEV_ATAPI:3:BASEDEV=IBMATAPI.FLT^^DEV_ATAPI:1,2:rem ^^MISC_PROB_VERBOSE:true: /V^ rem ### GPT filter BASEDEV=GPT.FLT /U:8^MISC_PROB_VERBOSE:true: /V^ rem ### device management BASEDEV=OS2DASD.DMD BASEDEV=OS2LVM.DMD rem ### locale settings: codepage, country, keyboard layout, Unicode language support, locale support, IPF charset CODEPAGE=^MISC_LOC_CPVALUE:*********^ COUNTRY=^MISC_LOC_CCVALUE:***^,^DRIVE_MEM:*^:\COUNTRY.SYS DEVINFO=KBD,^MISC_LOC_KBDNAME:*****^,^DRIVE_MEM:*^:\KEYBOARD.DCP SET ULSPATH=@:\LANGUAGE SET LANG=^MISC_LOC_LOCALE:*****^ SET TZ=^MISC_LOC_TIMEZONE:***********^ SET IPF_KEYS=^MISC_LOC_CHARSET:********^ rem ### serial device support (not enabled by default) ^DEV_FWATCH:false:rem ^DEVICE=\PSCOM.SYS ^DEV_FWATCH:true:DEVICE=\FWATCH.SYS 1^ rem ### HPFS support, CRITICAL ORDER! IFS=^DRIVE_MEM:*^:\HPFS.IFS /CACHE:512 rem ### Arca OS >5.0.5 unzip subdirectories with additional drivers, etc, CRITICAL ORDER! DEVICE=^DRIVE_MEM:*^:\CALL_EXE.SYS ^DRIVE_MEM:*^:\UNZIP.EXE -q USBEXTRA.BIN DEVICE=^DRIVE_MEM:*^:\ERASEFIL.SYS "^DRIVE_MEM:*^:\USBEXTRA.BIN" rem ### ArcaOS <5.0.5 unzip subdirectories with additional drivers, etc, CRITICAL ORDER! DEVICE=^DRIVE_MEM:*^:\CALL_EXE.SYS ^DRIVE_MEM:*^:\UNZIP.EXE -q EXTRA.ZIP DEVICE=^DRIVE_MEM:*^:\ERASEFIL.SYS "^DRIVE_MEM:*^:\EXTRA.ZIP" rem ### Unicode support, CRITICAL ORDER! DEVICE=^DRIVE_MEM:*^:\OS2\BOOT\UNICODE.SYS rem ### JFS support, CRITICAL ORDER! IFS=^DRIVE_MEM:*^:\JFS.IFS /CACHE:512 /LAZYWRITE:16,64,2 rem ### FAT32 support, CRITICAL ORDER! IFS=\OS2\BOOT\FAT32.IFS /CACHE:512 /H^MISC_PROB_VERBOSE:false: /Q^ CALL=\OS2\CACHEF32.EXE /F^MISC_PROB_VERBOSE:false: /S^ rem ### RAMFS required for browser ### IFS=^DRIVE_MEM:*^:\RAMFS.IFS /R /M:128M /DBCS^MISC_PROB_VERBOSE:false: /Q^ rem ### ISOFS support IFS=\STUBFSD.IFS ISOFS RUN=\OS2\ISOFSDMN.EXE rem ### CD file system and CD device management IFS=CDFS.IFS /C:8 /M:16 /W ^NLS_DBCS:false:/Q^ DEVICE=\^DEV_CDROM:********^.DMD^MISC_PROB_VERBOSE:false: /Q^^MISC_PROB_VERBOSE:true: /V^ rem ### miscellaneous drivers DEVICE=^DRIVE_MEM:*^:\TESTCFG.SYS DEVICE=\OS2\BOOT\DOS.SYS DEVICE=\OS2\BOOT\PMDD.SYS DEVICE=\OS2\BOOT\POINTDD.SYS ^SYS_MOUSE_DRIVER:1:rem ^DEVICE=\OS2\BOOT\MOUSE.SYS ^SYS_MOUSE_DRIVER:2:rem ^DEVICE=\SYS\BOOT\AMOUSE.SYS rem ### USB keyboard and mice ^DEV_USB_KEYBOARD:false:rem ^DEVICE=\OS2\BOOT\USBKBD.SYS^MISC_PROB_VERBOSE:true: /V^ ^DEV_USB_MOUSE:false:rem ^DEVICE=\OS2\BOOT\USBMOUSE.SYS^MISC_PROB_VERBOSE:true: /V^ rem ### USB resource manager ^DEV_USB:false:rem ^DEVICE=\SYS\BOOT\USBRESMG.SYS rem ### erase file on MemDisk to save space DEVICE=^DRIVE_MEM:*^:\ERASEFIL.SYS "^DRIVE_MEM:*^:\OS2KRNL" rem ### path statements LIBPATH=.;^DRIVE_MEM:*^:\;^DRIVE_MEM:*^:\OS2\DLL;^DRIVE_MEM:*^:\SYS\INSTALL;Y:\OS2\DLL;Y:\OS2\APPS\DLL; SET PATH=.;^DRIVE_MEM:*^:\;^DRIVE_MEM:*^:\OS2;Y:\OS2;Y:\OS2\APPS; SET DPATH=.;^DRIVE_MEM:*^:\;^DRIVE_MEM:*^:\OS2;^DRIVE_MEM:*^:\OS2\SYSTEM;Y:\;Y:\OS2; rem ### command shell SET OS2_SHELL=^DRIVE_MEM:*^:\CMD.EXE SET COMSPEC=^DRIVE_MEM:*^:\CMD.EXE SET KEYS=ON SET PROMPT=[$r $b $p] SET DIRCMD=/v rem ### user shell SET RUNWORKPLACE=PMSHELL.EXE PROTSHELL=^MISC_START:3:CMD^^MISC_START:1,2,4:PMSHELL^.EXE SET SHELLHANDLESINC=20 rem ### display driver DEVINFO=SCR,VGA,^DRIVE_MEM:*^:\VIOTBL.DCP SET DISPLAYTYPE=VGA ^SYS_GRADD:false:rem ^DEVICE=\OS2\GRADD.SYS ^SYS_MODE_EFIBOOT:true:rem ^SET VIO_^SYS_SVGA:true:S^VGA=DEVICE(^SYS_BVH_DEVICE:*^^NLS_DBCS:true:,BVHVGA2^) ^SYS_MODE_EFIBOOT:false:rem ^SET VIO_^SYS_SVGA:true:S^VGA=DEVICE(^SYS_BVH_DEVICE:*^) SET VIDEO_DEVICES=VIO_^SYS_SVGA:true:S^VGA ^SYS_GRADD:false:rem ^SET GRADD_CHAINS=C1 ^SYS_GRADD:false:rem ^SET C1=^SYS_GENGRADD:true:GENGRADD,SBFILTER^^SYS_GENGRADD:false:VBE2GRAD^ ^SYS_GRADD:false:rem ^^SYS_GENGRADD:true:rem ^SET GREEXT=PANOGREX rem ### various environment variables SET ETC=^DRIVE_MEM:*^:\var\etc SET TMP=^DRIVE_MEM:*^:\var\temp SET TEMP=^DRIVE_MEM:*^:\var\temp SET TMPDIR=^DRIVE_MEM:*^:\var\temp SET LOGFILES=^DRIVE_MEM:*^:\var\log rem ### INI files for PMSHELL SET USER_INI=Y:\OS2\OS2.INI SET SYSTEM_INI=Y:\OS2\OS2SYS.INI CALL=^DRIVE_MEM:*^:\OS2\LVM.EXE /Rediscoverprm rem ### system settings AUTOFAIL=YES BUFFERS=32 DISKCACHE=512,LW EARLYMEMINIT=TRUE ^DEV_NO_EARLYMEM:true:rem ^EARLYMEMINIT=TRUE IOPL=YES MAXWAIT=2 MEMMAN=SWAP,PROTECT,NOPACK PAUSEONERROR=NO PRINTMONBUFSIZE=134,134,134 PROTECTONLY=YES SWAPPATH=^DRIVE_MEM:*^:\ 512 512 SUPPRESSPOPUPS=^DRIVE_MEM:*^: THREADS=256 VIRTUALADDRESSLIMIT=2048 SET AUTOSTART=PROGRAMS,TASKLIST,FOLDERS SET BOOKSHELF=Y:\OS2\HELP; SET EPMPATH=Y:\OS2\APPS SET HELP=Y:\OS2\HELP; SET LANG=en_AU SET RESTARTOBJECTS=STARTUPFOLDERSONLY SET SCKILLFEATUREENABLED=ON SET ULSPATH=Y:\LANGUAGE
Check the text for any problems. If the maintenance volume is not Y: then change all references from Y: to the drive of the maintenance volume. Save the file
14. Setup of the USB stick should now be complete. Insert the disc into the computer to be started, and start/restart the computer.
Access the one-time boot menu (sometimes by pressing F12 during the boot process) or enter the setup and add the USB stick to the boot options.
At the first menu, choose the second option (probably "Install / Maintain ArcaOS")
At the second menu, choose the second option if you generally need to use non-default settings for booting
ArcaOS on the machine. To boot to the command line, go to screen 4 and at the boot mode option select Command Line Interface, then F10 to proceed.
LIMITATIONS
This is a complex way to get to a PM desktop, with the INI files and desktop on the Y: drive and the config.sys saved on one volume but transferred to Z: for booting. Some programs can be installed and will write INI file changes correctly, but some will try to write to INI files on the "boot" drive Z:, which will fail.
Any changes made to the Z:config.sys will not be preserved for the next booting, so Z:\config.sys changes need to be added to the config.sys on the UEFI volume and/or BIOS volume before shutting down.
TROUBLESHOOTING
Sometimes booting to LEGACY BIOS produces a hang or significant period of inactivity in the boot process after the decompression of the EXTRA.BIN file. A pause in the booting process before LVM /rediscoverprm can make this less likely. One option is to create a file wait.c containing the text
#define INCL_DOSPROCESS #include <os2.h> #include <stdio.h> int main(int argc, char *argv[]) { int t = 10; if (argc > 1) {sscanf(argv[1],"%d",&t);} DosSleep(t * 1000); return 0; }
Save the file and run
gcc wait.c -o wait.exe
If gcc is not found, compile the program with another C compiler, or download gcc with
yum install gcc
Copy wait.exe to the root directory of the BIOS volume and include the line
CALL=^DRIVE_MEM:*^:\WAIT.EXE 10
before the line
CALL=^DRIVE_MEM:*^:\OS2\LVM.EXE /Rediscoverprm
in the config.sys on the BIOS voume. This will produce a 10 second pause before lvm.exe commences, shorter times may be sufficient.
If you compile with GCC, copy the files below into the root directory of the BIOS volume
SET BIOSboot=J: SET BOOTDRIVE=D: copy %BOOTDRIVE%\usr\lib\libcn0.dll %BIOSboot% copy %BOOTDRIVE%\usr\lib\gcc1.dll %BIOSboot%
If the boot process does not proceed to a desktop, boot to a command line. This might allow further investigation - does lvm /rediscoverprm need repeating, is there a missing DLL? Is chkdsk Y: /F required?
Boot options - Many options on the options screens are present but will not change the boot setup (as ArcaOS installation is not occurring). Most options on the Devices page will still be active for tuning the config.sys, and on the Boot Options page, Boot mode - Command Line Interface will produce booting to an OS/2 prompt, the config.sys can be set to editing, and the letter of the Memory disk drive can be altered.