Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IBM OS/2, OS/2 Warp, eCommStation 2.1 2.2, Hang on boot (1S506 issues) #25

Closed
flynnsbit opened this issue Aug 7, 2020 · 10 comments
Closed

Comments

@flynnsbit
Copy link
Contributor

flynnsbit commented Aug 7, 2020

When booting OS/2 (any version) or eCommStation, AO486 will hang on loading the IBM1S506.ADD driver. Replacing that driver with the newer DANIS506.ADD file will result in the same issue. Also the IBMFLP1.ADD will also lock up and no continue unless you REM it out of the config.sys. Without floppy or HD, OS/2 cannot load.
Tested:
Dani506.ADD version 1.08.15
IBM1S506.ADD v9.32, 10.32, 10.161

OS Tested:
IBM OS2 2.0
IBM OS2 Warp 3.0 (Bluebox edition)
IBM OS2 Warp 4.0
eComStation 2.1 Retail
eComStation 2.2 beta

There is a reference to the BOCHs bios causing issues and people were able to solve by switching to the Asus P_I-P6NP5.zip custom bios. This is a 128K bios that I could not get loaded. Are any other bios files supported besides the Plex/Bochs one?

BOCHs can load the image successfully for the above OSs with either their latest non-legacy bios or the ASUS bios referenced above.

https://sourceforge.net/p/bochs/mailman/message/13396033/

Video Example:https://www.youtube.com/watch?v=-zHtGMZS-LI&feature=youtu.be
VHD 1: both IBM1FLPY.ADD and IBM1S506.ADD left in config.sys
VHD 2: both REMed out, Can't boot -- no disk
VHD3: rem'ed out IBM1FLP1.ADD only, locks on IBM1S506.ADD
VHD4: eCommStation 2.2, AiR-Boot, Volume is detected, Dani and IBM1506 will lock up if not REMed out.

@flynnsbit flynnsbit changed the title IBM OS/2, OS/2 Warp, eCommStation 2.1 2.2, Hang on boot (506 issues) IBM OS/2, OS/2 Warp, eCommStation 2.1 2.2, Hang on boot (1S506 issues) Aug 7, 2020
@flynnsbit
Copy link
Contributor Author

Worked through all the versions of IBM1S506.ADD as well as PIIXIDE.ADD v1.1 and all lock up on loading. I've tried disabling BusMaster support, removing UDMA, all to the same effecting. Setting /V and /W are supposed to load and then display the drive information that was detected and that also doesn't work. Unfortunately it is difficult to debug the behavior if the hard drive driver doesn't ever load. Is there a specific IRQ used for the IDE interface for HD1 and HD2? (IRQ 14 and 15?)
There are references to a debug port over serial in the code, is this left over from BOCHs or could I enable it on the Mister?
define BX_DEBUG_SERIAL 0 /* output to COM1 */ Can I really do this to see what the BIOS is seeing?

On a side note, PIIXIDE.ADD seems to be the fastest and most stable for OS/2 Warp installs in BOCHS and VirtualBox.

@sorgelig
Copy link
Member

IDE controller is PIO-only. So no DMA modes.
Also it has some problem, so even windows uses compatibility mode, i.e. BIOS calls to access the disks.
Welcome to improve it.
Actually BOCHS BIOS forces to use IDE in worst (single sector per time) mode.

@flynnsbit
Copy link
Contributor Author

I'll at least look through the code and mess around with builds. Thanks for the verification on DMA.

@boogermann
Copy link

@flynnsbit do you have experience messing with OS/2 Warp?
I have a vhd with 4.52 installed, I had it booting at one point, but I had bios and cores all mixed up and I don't know what combination I had or what version of the cache was.
after a few cache revisions it would just hang without showing anything, then with cache43, this error started to show up

OS/2 !! SYS02025
OS/2 !! SYS02027

I couldn't find any reference to it. If I boot with the floppy disk it just hangs at the splashscreen.
Let me know if you want the VHD so you can try to recovery it or play with it.

Here's the screenshot of the error:
screenshot

@flynnsbit
Copy link
Contributor Author

Yes I do and I'm interested. Usually those OS/2 errors mean that the boot loader can't find the system files on the boot media (like if you were to mount disk 2 (as in the diskette), set the FDD boot option and try to boot with that. OS/2 will do that if you don't boot disk 0 first. You had a VHD that made it all the way to the Warp desktop?? If so, very interested in testing and seeing the config.sys file.

@boogermann
Copy link

@flynnsbit here it is... this version is the one I had booting before and shows the error on the screenshot. I flashed the VHD on a drive and it's booting on real hardware. I reinstalled it on the hardware and made a newer image with it, this time I created the 4 setup utility disks and also exported the mbr into a bin file, and I can see the error code in it...

.OS/2 !! SYS01475
.�.OS/2 !! SYS02025
.�.OS/2 !! SYS02027
.OS2BOOT

Weirdly enough the new one doesn't show the error code when it tried to boot, but the yellow light on the IO board stays on as if it's trying to boot. on real hardware it takes sometime before it starts to load, I left about 30 min untouched and it never moved on. The first version I installed from Windows 98, the second I installed from DOS. but in both of them I had an error in the beginning telling me it couldn't find the DOS to start, but it moves on to the desktop. I just couldn't never get the graphics card working though, the disk with the drivers is included on the second pack. Let me know if you had any success with it
kunos2

this is the config.sys file...

IFS=C:\OS2\JFS.IFS /AUTOCHECK:*
IFS=C:\OS2\HPFS.IFS /CACHE:64 /CRECL:4
PROTSHELL=C:\OS2\PMSHELL.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:\OS2\MDOS;C:\;C:\OS2\APPS\DLL;
SET PATH=C:\OS2;C:\OS2\SYSTEM;C:\OS2\MDOS\WINOS2;C:\OS2\INSTALL;C:\;C:\OS2\MDOS;C:\OS2\APPS;
SET DPATH=C:\OS2;C:\OS2\SYSTEM;C:\OS2\MDOS\WINOS2;C:\OS2\INSTALL;C:\;C:\OS2\BITMAP;C:\OS2\MDOS;C:\OS2\APPS;
SET PROMPT=$i[$p]
SET 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\BOOT\TESTCFG.SYS
DEVICE=C:\OS2\BOOT\DOS.SYS
DEVICE=C:\OS2\BOOT\PMDD.SYS
COUNTRY=001,C:\OS2\SYSTEM\COUNTRY.SYS
CODEPAGE=437,850
DEVINFO=KBD,US,C:\OS2\KEYBOARD.DCP
SET LANG=en_US
SET TZ=est5edt
SET ULSPATH=C:\LANGUAGE
DEVICE=C:\OS2\BOOT\UNICODE.SYS
BUFFERS=90
IOPL=YES
DISKCACHE=D,LW,AC:C
MAXWAIT=3
MEMMAN=SWAP,PROTECT
SWAPPATH=C:\OS2\SYSTEM 2048 2048
BREAK=OFF
THREADS=1024
PRINTMONBUFSIZE=134,134,134
SET KEYS=ON
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\SYSTEM\LVMALERT.EXE
RUN=C:\OS2\EXTENDFS.EXE *
REM SET DELDIR=C:\DELETE,512;
BASEDEV=PRINT01.SYS
BASEDEV=IBM1FLPY.ADD
BASEDEV=IBM2FLPY.ADD
BASEDEV=IBM1S506.ADD
BASEDEV=XDFLOPPY.FLT
BASEDEV=I2OXPORT.SYS
BASEDEV=I2OSOSM.ADD
BASEDEV=OS2DASD.DMD
BASEDEV=OS2LVM.DMD
BASEDEV=CHKDSK.SYS
SET EPMPATH=C:\OS2\APPS;
PROTECTONLY=NO
SHELL=C:\OS2\MDOS\COMMAND.COM C:\OS2\MDOS
FCBS=16,8
RMSIZE=640
DEVICE=C:\OS2\MDOS\VEMM.SYS
DOS=LOW,NOUMB
DEVICE=C:\OS2\MDOS\VXMS.SYS /UMB
DEVICE=C:\OS2\MDOS\VDPMI.SYS
DEVICE=C:\OS2\MDOS\VDPX.SYS
DEVICE=C:\OS2\MDOS\VWIN.SYS
DEVICE=C:\OS2\MDOS\VW32S.SYS
DEVICE=C:\OS2\BOOT\OS2CDROM.DMD /Q
IFS=C:\OS2\BOOT\UDF.IFS
IFS=C:\OS2\BOOT\CDFS.IFS /Q /W
DEVICE=C:\OS2\MDOS\VCDROM.SYS
BASEDEV=IBMIDECD.FLT
BASEDEV=IBMATAPI.FLT
DEVICE=C:\OS2\MDOS\VMOUSE.SYS
DEVICE=C:\OS2\BOOT\POINTDD.SYS
DEVICE=C:\OS2\BOOT\MOUSE.SYS SERIAL=COM1
DEVICE=C:\OS2\BOOT\COM.SYS
DEVICE=C:\OS2\MDOS\VCOM.SYS
SET DEVICEFONTDISABLED=NO
REM BASEDEV=USBUHCD.SYS 
REM BASEDEV=USBD.SYS /REQ:USBUHCD$
REM BASEDEV=USBHID.SYS 
REM BASEDEV=USBMSD.ADD 
REM BASEDEV=USBCDROM.ADD 
REM DEVICE=C:\OS2\BOOT\USBKBD.SYS 
REM DEVICE=C:\OS2\BOOT\USBMOUSE.SYS 
REM DEVICE=C:\OS2\BOOT\USBCOM.SYS 
DEVINFO=SCR,VGA,C:\OS2\BOOT\VIOTBL.DCP
SET VIDEO_DEVICES=VIO_VGA
SET DISPLAYTYPE=VGA
SET VIO_VGA=DEVICE(BVHVGA)
DEVICE=C:\OS2\MDOS\VSVGA.SYS

@flynnsbit
Copy link
Contributor Author

flynnsbit commented Aug 14, 2020

IBM1FLPY.ADD is locking up your image. You can see the progress of the config.sys drivers loading by pressing "ALT-F2" while the text "OS/2" is on the screen, before the blue OS2 WARP. ALT-F1 is supposed to let you down to a command prompt or boot from an archive but it won't get passed the disks issues. I'll see what is up with the other one. If you've gotten it to boot before then there was a combo of bios+Mister build +Ao486 that worked. We just need to find it and then see when it broke and look through that code. Wasn't there a different boot0 bios somewhere in the dev cycle?

@boogermann
Copy link

There was a bunch of changes in everything and I never kept track of it as I was doing everything as experimentation. People were posting new builds on the testing channel, I would copy over and run. I just wated to see all the old OS's I could boot into. I wanna make a historical timeline of OS's and also keep them at hand as my work sometimes involves transferring legacy systems to newer ones. It's like 2020 and the company I work for still heavily relies on dBaseIII. lol.
I also found a few bios that MiSTer can boot with, 2 of them you can actually get into the setup, but it gets into a manufacturer loop, on original hardware that's just a jumper, I have no idea how to make them work on MiSTer. but at least it's showing up some useful information.
Bios

@shawnhenderson
Copy link

Robert's latest changes seem to have fixed the OS2 IBMFLPY and DANSI IDE drivers. They now load properly and I can get to a command line, fully booted. The PMSHELL.EXE is still bombing or locking up so I am working through the issues. I think it is the display drivers. Making progress!!! https://www.youtube.com/watch?v=QzRucYQaffM

@shawnhenderson
Copy link

Turning off L1 cache allows for the graphical front end to boot. With the L1 cache turned on you get this trap:
L1cache_trap

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

4 participants