• Please review our updated Terms and Rules here

Book 8088 discovery and modification thread

Maybe I should rewire my 2 books to allow writing the eeproms I have in them now. lol (opening them back up every time I want to flash is annoying since you can't pry the chip out easily and finding something strong enough to use as a pulling tab...) Your 2nd one show up yet?
Nope :( Still waiting.

I'm using thin end tweezers (i bent it's ends inside) when Book is in the case, so i can pull chip from "leg sides", hope i clear :) Just hold it a bit on top with finger to not break it with too much force.
 
i sprayed de-oxit in my socket and i wrapped a vinyl sticker around the eprom so i can tug on i and rock it and pop it out without taking the case apart.
 
oh. you're making changes in another branch.. explains why git just said there was no changes...
Yes, i somewhat "checkpointed" master branch, if all goes good with "settings" branch, i'll merge it back. I did lot of changes implementing BIOS setup support so just wanted to stay safe :)
 
Yes, i somewhat "checkpointed" master branch, if all goes good with "settings" branch, i'll merge it back. I did lot of changes implementing BIOS setup support so just wanted to stay safe :)
Gotcha. Except now I need to change my local repo and flash _another_ chip (I'm using eeproms now, but i'm trying to balance the writes to them.. yes, weird, i know, but whatever).. How is the 'setup' done? or does it do its own detection and just save the settings to the MBR area?
 
Gotcha. Except now I need to change my local repo and flash _another_ chip (I'm using eeproms now, but i'm trying to balance the writes to them.. yes, weird, i know, but whatever).. How is the 'setup' done? or does it do its own detection and just save the settings to the MBR area?

I already broke one of two, so ordered five more :) They're cheap.

Setup logic - if 4-bytes area at offset 190h of the very first sector is empty (zeroes) i consider it's safe to write there.
If you press "w" in setup - it writes "90h" (as identifier), floppy config byte, bios config byte and a checksum.
If some other data present in that area - BIOS will warn about that and write nothing.
Next time, if id is there and checksum is ok - settings are loaded.
I've also added test mode - 'a' applies settings, but does not write them.
Setup also uses two bytes in reserved bios data area, but as i already use some for floppy emulation - i guess that's ok.
Floppy setup logic may seem somewhat strange, as as i wanted not to change original code much.
So, floppy emulation is auto-on if floppy 0 (A) is set to None and flash drive is present on boot - it's like that was before.
If it's set to some value - original int 13h will work, trying to use real FDC.
If you set floppy emulation to "enforced" - emulation will always be on for drive 0 (A), regardless of drive presence and disk type.
I plan it to return drive type set in floppy config, but didn't get to that so far.
 
I already broke one of two, so ordered five more :) They're cheap.

Setup logic - if 4-bytes area at offset 190h of the very first sector is empty (zeroes) i consider it's safe to write there.
If you press "w" in setup - it writes "90h" (as identifier), floppy config byte, bios config byte and a checksum.
If some other data present in that area - BIOS will warn about that and write nothing.
Next time, if id is there and checksum is ok - settings are loaded.
I've also added test mode - 'a' applies settings, but does not write them.
Setup also uses two bytes in reserved bios data area, but as i already use some for floppy emulation - i guess that's ok.
Floppy setup logic may seem somewhat strange, as as i wanted not to change original code much.
So, floppy emulation is auto-on if floppy 0 (A) is set to None and flash drive is present on boot - it's like that was before.
If it's set to some value - original int 13h will work, trying to use real FDC.
If you set floppy emulation to "enforced" - emulation will always be on for drive 0 (A), regardless of drive presence and disk type.
I plan it to return drive type set in floppy config, but didn't get to that so far.
but (unless I should just go look at the code) how is setup accessed? prompted on boot like normal (non 5170) 286+ setups?
 
but (unless I should just go look at the code) how is setup accessed? prompted on boot like normal (non 5170) 286+ setups?

Just press F1 before memory test completes. You'll see the message about that right after copyright if everything goes well.
 
Just press F1 before memory test completes. You'll see the message about that right after copyright if everything goes well.
[ 12%] Building ASM_NASM object CMakeFiles/bios-micro8088.bin.dir/src/bios.asm.o

/Users/xxxx.xxxx/myrepos/8088_bios/src/setup.inc:126: error: symbol `nvram_setup.apply' not defined
 
Hmmm, i dunno about CMake, but `make bios-book8088-xtide.rom` should work 100% (inside ./src)
For me it looks like it tries to build to some other target, let me check
--
Fixed incorrect define, should compile fine
 
Last edited:
Hmmm, i dunno about CMake, but `make bios-book8088-xtide.rom` should work 100% (inside ./src)
For me it looks like it tries to build to some other target, let me check
--
Fixed incorrect define, should compile fine
Compiles now. I'll give it a test later today.
 
Compiles now. I'll give it a test later today.
Appears to work. Could have options for different 'boot sounds'.. lol. Trying to think of other things but brain isn't working yet. That happens after work. ;-)
 

Attachments

  • IMG_20231214_123102893_HDR.jpg
    IMG_20231214_123102893_HDR.jpg
    2.8 MB · Views: 26
  • IMG_20231214_123121314_HDR.jpg
    IMG_20231214_123121314_HDR.jpg
    2.3 MB · Views: 26
Appears to work. Could have options for different 'boot sounds'.. lol. Trying to think of other things but brain isn't working yet. That happens after work. ;-)
Good to know!
There's a very-very limited space in BIOS, so we can store about 3-4 seconds of sound there.
And even for that i had to dig out very old sound compressor.
I'm more interested - have you got USB floppy emulation to work on any of your Books?
 
Good to know!
There's a very-very limited space in BIOS, so we can store about 3-4 seconds of sound there.
And even for that i had to dig out very old sound compressor.
I'm more interested - have you got USB floppy emulation to work on any of your Books?
I still have to find a suitably smaller usb stick (I have a 512M somewhere...somewhere).. when I tried before, it didn't work with the boot, and well, under dos, it ran like сміття ... I'll try again at some point if i can get a better drive.
 
it ran like сміття ...
:)
I'm pretty sure size is not the problem in this case.
Here's two drives i use (found in some old stuff i keep) - one w/o case identifies as Kingston DataTraveller, Transcend is JetFlash. Both are 16GB.
Work absolutely stable, tested with many floppy .img and .ima images.
There's might be a difference with CH375 chip revision that matters, FreddyV driver returns mine as B7, but that's just a guess.
 

Attachments

  • photo_2023-12-14_23-01-44.jpg
    photo_2023-12-14_23-01-44.jpg
    126.6 KB · Views: 2
:)
I'm pretty sure size is not the problem in this case.
Here's two drives i use (found in some old stuff i keep) - one w/o case identifies as Kingston DataTraveller, Transcend is JetFlash. Both are 16GB.
Work absolutely stable, tested with many floppy .img and .ima images.
There's might be a difference with CH375 chip revision that matters, FreddyV driver returns mine as B7, but that's just a guess.
Guess I'll try other drives then... I was using a 16G freebie drive (vendor promo)

Update: Tried another 16G drive.. same as usual... Boot A>>A Failed 1h! (bootable 360k dos image that works fine in goteks)
 
Last edited:
Guess I'll try other drives then... I was using a 16G freebie drive (vendor promo)

Update: Tried another 16G drive.. same as usual... Boot A>>A Failed 1h! (bootable 360k dos image that works fine in goteks)
@n0p Also, new weird artifact I've never had before.... Note the long scrollspam from the bios banner.

 
I just found that if you switch the video cards out (I bought an extra CGA and VGA with this last book) you need to be very careful about it.. it connects on 1 side, and if you lift from the opposing side, it'll try and rip the MB connector off.. eesh.. found out switching the 2nd one out that from the shorter ends is a bit better since then it's on the sides that are 'anchored' on the connector, but still..
 
  • Sad
Reactions: n0p
Back
Top