• Please review our updated Terms and Rules here

Book 8088 discovery and modification thread

I think I've mentioned before but there is a jumper on the SDLPT, for selecting between the drivers in hardware - I don't know what it does as this version is closed source.
Looking at the schematic for the board though (that you have), it changes between 2 different pins on the parallel port.
 
Regarding PicoGUS and Book8088.
I couldn't make it work on it and afaik @Betamax80 as well.
ISA extender was good, Picogus worked with Hand386 w/o problems. (almost pocket Second Reality :))
But pgusinit couldn't talk to Book on control port.
I recently started to have some issues on Book, which i thought was to to my heavy modding of it.
Dots on screen, random hangs, memory errors.
It was the power source
I switched to 12V power supply from one of my old routers - and guess what?
pgusinit finds the device now 😀
 
Last edited:
Coudn't help myself, ordered V2 with VGA and CGA cards, discount was too good, same price as if i order it from TaoBao.
I'm about to buy (probably) a 2nd v2, a seperate cga and vga module (so both of them can do CGA or VGA) and even with all that, it costs about $90 less than my first v2! gah.
 
Regarding PicoGUS and Book8088.
I couldn't make it work on it and afaik @Betamax80 as well.
ISA extender was good, Picogus worked with Hand386 w/o problems. (almost pocket Second Reality :))
But pgusinit couldn't talk to Book on control port.
I recently started to have some issues on Book, which i thought was to to my heavy modding of it.
Dots on screen, random hangs, memory errors.
It was the power source
I switched to 12V power supply from one of my old routers - and guess what?
pgusinit finds the device now 😀
Correct, picoinit just didn't detect the card, not in any way.
 
Regarding PicoGUS and Book8088.
I couldn't make it work on it and afaik @Betamax80 as well.
ISA extender was good, Picogus worked with Hand386 w/o problems. (almost pocket Second Reality :))
But pgusinit couldn't talk to Book on control port.
I recently started to have some issues on Book, which i thought was to to my heavy modding of it.
Dots on screen, random hangs, memory errors.
It was the power source
I switched to 12V power supply from one of my old routers - and guess what?
pgusinit finds the device now 😀
Interesting, I'm already using a safer UK power supply from Amazon, but I've stuck to the 12v 1.5A of the original.... should I be pumping more through the book somehow?
It's clearly not specced sufficiently in circuitry, it was completely flakey with an 8087 in it.
 
New user here!
I have purchased a V2 and updated the BIOS to the 1.0.3 XTIDE V20 version. Found the same EGA/VGA quirks as others in this thread and intend to do some more testing over the next few weeks.

For something completely useless, I have managed to get a vintage LS120 floppy drive going using an IDE to USB adapter. It reads/writes to LS120 disks with the occasional write error that I am putting down to old equipment of suspect heritage, and it reads 1.44MB floppies OK but haven't tried writing to them. If I change the disk in the drive, I have to reboot the Book to get it to recognise the new disk.

I am keen to get the Book to read real floppies so will see if I can pick up an ISA floppy controller.

I have had trouble getting the USB port to read USB sticks, and so far, have only managed to read a 256MB micro SD card in a USB card reader. Finding a small USB stick (<2GB) is a bit of a challenge nowadays ;)

Next device to check is the USB IOMega ZIP drive...will report back on how that goes.
 
New user here!
I have purchased a V2 and updated the BIOS to the 1.0.3 XTIDE V20 version. Found the same EGA/VGA quirks as others in this thread and intend to do some more testing over the next few weeks.

For something completely useless, I have managed to get a vintage LS120 floppy drive going using an IDE to USB adapter. It reads/writes to LS120 disks with the occasional write error that I am putting down to old equipment of suspect heritage, and it reads 1.44MB floppies OK but haven't tried writing to them. If I change the disk in the drive, I have to reboot the Book to get it to recognise the new disk.

I am keen to get the Book to read real floppies so will see if I can pick up an ISA floppy controller.

I have had trouble getting the USB port to read USB sticks, and so far, have only managed to read a 256MB micro SD card in a USB card reader. Finding a small USB stick (<2GB) is a bit of a challenge nowadays ;)

Next device to check is the USB IOMega ZIP drive...will report back on how that goes.

this is because LS120 usb looks like a USB stick. the USB driver supplied pre-installed inside book8088 sucks you have to load another driver ch375v022.zip which is much more stable
 
Interesting, I'm already using a safer UK power supply from Amazon, but I've stuck to the 12v 1.5A of the original.... should I be pumping more through the book somehow?
It's clearly not specced sufficiently in circuitry, it was completely flakey with an 8087 in it.

It looks like it's not about current, but quality of power supply. It didn't make EGA card to work (but it reduced amount of noise to almost readable level). EGA card beeps on boot, so i took a look at it's BIOS and that's memory test failing :) It doesn't beep on my P200MMX or Hand386, so i guess there some odd ISA bus problem, most probably some kind of noise. I wish i know better about those things.

I am keen to get the Book to read real floppies so will see if I can pick up an ISA floppy controller.

I have had trouble getting the USB port to read USB sticks, and so far, have only managed to read a 256MB micro SD card in a USB card reader. Finding a small USB stick (<2GB) is a bit of a challenge nowadays ;)

Next device to check is the USB IOMega ZIP drive...will report back on how that goes.

For some reason FreddyV did not release the source, but driver has delay parameters and playing with them could help.
If you use my BIOS build - for FDC you should switch to Sergey's official, as i still didn't implement interoperability.

A question though - who should init first?
My logic is if you have flash drive inserted on boot, you want to boot from it :)
So it might be as - no flash drive, ping FDC, no FDC - no floppies. Flash drive - ignore FDC, use emulation.
 
A question though - who should init first?
My logic is if you have flash drive inserted on boot, you want to boot from it :)
So it might be as - no flash drive, ping FDC, no FDC - no floppies. Flash drive - ignore FDC, use emulation.
I just use the xtide menu and have a nice long delay set so i always choose what boots first :)
 
...
If you use my BIOS build - for FDC you should switch to Sergey's official, as i still didn't implement interoperability.
...
I made a mistake in my original post in that I am using Sergey's 1.0.0 V20 ROM. Not sure where I got the 1.0.3 from.

The parallel port driver for the IOMega zip drive is working. An important note is that the IOMega drivers must go before the CH375DOS driver. If you do it the other way around, config.sys complains about an invalid driver. I am finding the zip drives to be a handy way of transferring files between the Win 11 PC and my vintage PC's.

I have updated the CH375 driver to the one recommended in this thread, but still can't read/write to a USB stick. I can see the directories contents, but any attempt to read or write results in a long delay (more than a minute) before barfing an error message of "Not ready reading drive E". Drive D is the parallel port Zip drive.
 
I made a mistake in my original post in that I am using Sergey's 1.0.0 V20 ROM. Not sure where I got the 1.0.3 from.

The parallel port driver for the IOMega zip drive is working. An important note is that the IOMega drivers must go before the CH375DOS driver. If you do it the other way around, config.sys complains about an invalid driver. I am finding the zip drives to be a handy way of transferring files between the Win 11 PC and my vintage PC's.

I have updated the CH375 driver to the one recommended in this thread, but still can't read/write to a USB stick. I can see the directories contents, but any attempt to read or write results in a long delay (more than a minute) before barfing an error message of "Not ready reading drive E". Drive D is the parallel port Zip drive.

if it can be useful, I'm using an 8GB USB stick, from Linux I created a 128mb partition in fat16, and formatted this partition in vfat, without long name extensions, access to the stick is very stable, I can insert and disconnect it as many times as possible times I want and it never gives me errors.
 
For some reason FreddyV did not release the source, but driver has delay parameters and playing with them could help.
If you use my BIOS build - for FDC you should switch to Sergey's official, as i still didn't implement interoperability.

A question though - who should init first?
My logic is if you have flash drive inserted on boot, you want to boot from it :)
So it might be as - no flash drive, ping FDC, no FDC - no floppies. Flash drive - ignore FDC, use emulation.
It should be not that difficult to check for the FDC presence... probably something like sending a command to FDC, e.g., sense drive status, and checking the result.
As far as the boot selection, ideally Book8088 would have a flash ROM or some kind of configuration storage, so that it would be possible to configure it, but it does not have a writable flash.
I think floppies should init first... It might be possible to implement some kind of drive remapping on the BIOS level, e.g., when user pushes a certain button (wouldn't XUB do that already?!). I'll try to test that...
 
It should be not that difficult to check for the FDC presence... probably something like sending a command to FDC, e.g., sense drive status, and checking the result.
As far as the boot selection, ideally Book8088 would have a flash ROM or some kind of configuration storage, so that it would be possible to configure it, but it does not have a writable flash.
I think floppies should init first... It might be possible to implement some kind of drive remapping on the BIOS level, e.g., when user pushes a certain button (wouldn't XUB do that already?!). I'll try to test that...
Well it has :)
Just to do a bit more reading of XT-IDE sources, it's long winter.
A couple of bytes won't break 2nd, or even first sector of partition table on CF Card
 
Well it has :)
Just to do a bit more reading of XT-IDE sources, it's long winter.
A couple of bytes won't break 2nd, or even first sector of partition table on CF Card
That would work assuming you have a CF card. Perhaps might be a Book 8088 specific hack...
Another potential issue that XUB (XT-IDE Universal BIOS) get initialized a bit later and it assumes (or might assume) that floppy disks configuration, e.g. number of drives, doesn't change after XUB initialization
Still might be worth an experiment... Once I have some time
 
That would work assuming you have a CF card. Perhaps might be a Book 8088 specific hack...
Another potential issue that XUB (XT-IDE Universal BIOS) get initialized a bit later and it assumes (or might assume) that floppy disks configuration, e.g. number of drives, doesn't change after XUB initialization
Still might be worth an experiment... Once I have some time

I thought about making a small module for your BIOS to directly communicate via 300h port and reading/writing first/second sector for that purpose. I surely don't want to rewrite whole XT-IDE BIOS though :) Yes, it will be Book specific, but that's what this thread is for :)
 
I'm trying to read through everything here.

I'm having an issue with weird dots and tearing on the screen when i run the area5150 demo. help?

thanks.
DSCN5993.JPG
 
I thought about making a small module for your BIOS to directly communicate via 300h port and reading/writing first/second sector for that purpose. I surely don't want to rewrite whole XT-IDE BIOS though :) Yes, it will be Book specific, but that's what this thread is for :)
Yeah, that sounds like a complicated solution ;)
Technically, it might be easier to initialize XUB, read the configuration, set floppy/USB floppy emulation configuration, reset interrupt vectors, and then re-initialize XUB again ;)
 
Yeah, that sounds like a complicated solution ;)
Technically, it might be easier to initialize XUB, read the configuration, set floppy/USB floppy emulation configuration, reset interrupt vectors, and then re-initialize XUB again ;)

:)
Well, after reading XUB sources a bit i understood it won't give me much without understanding author logic/conventions and the actual base.
So i've searched about XT-IDE origins, most links are dead, but found this document, that seem to be the origin of all things :)
Next, OSDEV has a pretty nice article https://wiki.osdev.org/ATA_PIO_Mode
PCem has XT-IDE support and your BIOS in some configs as well.
I have a working standalone prototype now already :)
--
Now i certainly want to write a basic int 13h handler for that and do some tests on it. Looks like it will be much simpler than CH375 as ATA interface is well documented. Yes, it will support only master on 300h, but yet again, it will be ok for Book.
 
Last edited:
Back
Top