Booting to ArcaOS Desktop on a USB Stick

From OS2World.Com Wiki
Jump to navigation Jump to search
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.