• Please review our updated Terms and Rules here

Using DEBUG to get BIOS?

Yes, you sum modulo-256 every byte but the last, but then you create the stored checksum by subtracting the sum from 0 (2's complement) and store it as the last byte.

However, about the only ROM BIOS checksum you can reliably compute this way is the one that runs for the 2000 (hex) bytes between FE00:0 and the end of memory. Any other checksums are strictly vendor-dependent, both in their length and location.
I learn something every day; I thought that putting the checksum complement into the last byte was a BIOS "standard"...

I guess if all else fails, you could always change one of the bytes in a rarely-used text string to bring the checksum to 0. Like I said, a good supply of EPROMs and a burner, an NVRAM chip, or an ICE would really be handy for this kind of exploration.

But I'm surprised that you have PLCC BIOS ROMs in a 286... what EPROMs could you use as a replacement?

Have you tried a DDO? In most cases the actual geometry of the HD doesn't really matter since it only has to read the first sector; that's what it's for after all.
 
Last edited:
There are lots of little gotchas--including the checksum over the last 8K--and "IBM" in byte 14, 15 and 16 (decimal) in the FE00 segment.

I think that Phoenix currently uses a 4-byte checksum on its late BIOSes.
 
I learn something every day; I thought that putting the checksum complement into the last byte was a BIOS "standard"...

I guess if all else fails, you could always change one of the bytes in a rarely-used text string to bring the checksum to 0. Like I said, a good supply of EPROMs and a burner, an NVRAM chip, or an ICE would really be handy for this kind of exploration.

But I'm surprised that you have PLCC BIOS ROMs in a 286... what EPROMs could you use as a replacement?

Have you tried a DDO? In most cases the actual geometry of the HD doesn't really matter since it only has to read the first sector; that's what it's for after all.

Therein lies part of the problem... I havent been able to confirm that Im reading/checksumming the file(s) correctly yet, as my result is not coming out to zero as expected...

Actually there IS a PLCC in the 286 as well (the 2810) but the one Im trying to modify is the V20 CPU (the 1500)... A DDO does not seem to work because once the drive cannot be recognized and 'hard drive failure detected' appears no amount of coaxing will convince it to look for anything there...

I CAN attempt to install the DDO on my 'TV' system and THEN put it in... now that I have one (or 2) I might try again...



There are lots of little gotchas--including the checksum over the last 8K--and "IBM" in byte 14, 15 and 16 (decimal) in the FE00 segment.

I think that Phoenix currently uses a 4-byte checksum on its late BIOSes.

I would have to look again to see what is at FE00:0000...

I am a little MORE distracted than usual today... the 2810's sibling (Panasonic CF-270) arrived today, and has the EXACT SAME power-up issue as the 2810..

Using a good spare controller board I recovered its hard drive and found DOS 5 plus a bunch of DOS-based stuff... because it has some CF-270 specific software on it I cannot 'clean' it until I get it copied off...

(and I now have 3 machines that eventually will need 35-pin memory!)

So I have alot of work to do!
 
Last edited:
Sounds like you're having fun. Like many laptops these babies are a little different from your run-of-the-mill PC clone; you don't find many 286s with 16-bit EPROMs or XT-class machines with 64KB ROMs containing drive tables for that matter; maybe that's a factor in your puzzles. BTW, are you sure that's not a 27C1024 in the 2810/CF-170?

I would have thought that 'hard drive failure detected' indicates a hardware fault, but I really don't know anything about these particular machines or their BIOSes so I'll leave it for those who do know something to comment.

Good luck!
 
Sounds like you're having fun. Like many laptops these babies are a little different from your run-of-the-mill PC clone; you don't find many 286s with 16-bit EPROMs or XT-class machines with 64KB ROMs containing drive tables for that matter; maybe that's a factor in your puzzles. BTW, are you sure that's not a 27C1024 in the 2810/CF-170?

I would have thought that 'hard drive failure detected' indicates a hardware fault, but I really don't know anything about these particular machines or their BIOSes so I'll leave it for those who do know something to comment.

Good luck!

It might be... I have to remove my contacts AND put on the 'reading glasses' to see type that small these days! :eek: Will look again!
Edit: Nope... definately says 27c102jk not 1024jk... hurrumph!

Edit: The 1500 is NOT PLCC... it is an HN623257 28-pin DIP...

When a 'foreign' drive is in there (the 1500) , it seems to seek the ENTIRE DRIVE (it is active for a LONG time!) then it will come back with that 'failure detected' error... would LOVE to rewrite that section too... but one castle wall at a time, please!

Cant get the DDO software to run on the 'TV' machine... too new perhaps... it locks up and forces a button-off...
 
Last edited:
...Will look again! Nope... definately says 27c102jk not 1024jk... hurrumph!
Learned something else then; never heard of a 27c102, think I'll just sit on the sidelines and read from now on... ;-)

When a 'foreign' drive is in there (the 1500) , it seems to seek the ENTIRE DRIVE (it is active for a LONG time!) then it will come back with that 'failure detected' error... would LOVE to rewrite that section too... but one castle wall at a time, please!
Yeah, The BIOS will most likely have trouble reading a 'foreign' hard disk but why would that prevent you from booting a floppy with the DDO installation program and letting it analyze the HD and (if all is well) updating the MBR and formatting the drive? What am I not thinking about this time?

BTW, whose DDO software are you using?
 
I learn something every day; I thought that putting the checksum complement into the last byte was a BIOS "standard"...

I guess if all else fails, you could always change one of the bytes in a rarely-used text string to bring the checksum to 0. Like I said, a good supply of EPROMs and a burner, an NVRAM chip, or an ICE would really be handy for this kind of exploration.

But I'm surprised that you have PLCC BIOS ROMs in a 286... what EPROMs could you use as a replacement?

Have you tried a DDO? In most cases the actual geometry of the HD doesn't really matter since it only has to read the first sector; that's what it's for after all.

Learned something else then; never heard of a 27c102, think I'll just sit on the sidelines and read from now on... ;-)

Yeah, The BIOS will most likely have trouble reading a 'foreign' hard disk but why would that prevent you from booting a floppy with the DDO installation program and letting it analyze the HD and (if all is well) updating the MBR and formatting the drive? What am I not thinking about this time?

BTW, whose DDO software are you using?

I have a copy of Quantum's Disk Manager that will run on this machine (unlike Maxtor's...) but since the drive was declared 'failed' DM will not even touch it...

Edit: and since the TV machine WILL recognize it DM wont work with it cause it 'aint Quantum'!! :mad:
If you have one that WOULD work on a V20 based system, Id appreciate a copy of it!

I have had this machine open 3 times now... Im getting dizzy!!

Im attempting to set up the 500mb drive as an 80... 615/4/63... let's see if it works!
 
Last edited:
Nope... that doesnt work either. It still seems to scan the whole drive and call it 'bad'...
Once that happens, nothing will touch it...
 
Nope... that doesnt work either. It still seems to scan the whole drive and call it 'bad'...
Once that happens, nothing will touch it...
Odd that it would scan the whole drive; maybe it's actually just retrying track 0 until it finally gives up.

Have you run a full scan on this drive on another system to make sure it isn't in fact really bad?

What make/model is the drive? I'll have a look and see which versions I've got; PM me with an email address to send it to if I find a relevant one.

The Quantum installer I've got here isn't DM BTW, it's just called Quantum IDE Hard Disk Install.
 
The most recent attempt is with the Seagate 540 (ST9655AG) that has been verified to be 100% okay. And until last nite had DOS6.22, WFW3.11, Turbo Pascal and Wordstar on it... when it was Fdisked/formatted/systemed to be 615/4/63 and everything was lost. It still would not recognize it...

The time before was with an IBM 800mb that I ended up frying during a reconfiguration effort... didnt take kindly to being attached to the 'TV' backward...

I doubt any software would work unless I attach the drive to something else first... however I will PM post-haste. The older/lower-level the better, I suspect.
...and thanks !
 
Sorry Leeb, I was having a bad day and went off on you. It won't happen again.

Had I been thinking clearly, I would have given you the following BASIC program:
Code:
10 REM Program to dump any area of memory
20 LINE INPUT "Enter hex starting segment - ";A$
30 K = VAL( "&H"+A$)
40 IF K <> 0 THEN 70
50 PRINT "Input error, try again"
60 GOTO 20
70 INPUT "Enter number of KB to dump";L
80 IF L > 0 THEN 110
90 PRINT "Length must not be zero!"
100 GOTO 70
110 LINE INPUT "Enter file name to dump to - ",F$
120 ON ERROR GOTO 170
130 OPEN F$ FOR OUTPUT AS #1
140 CLOSE #1
150 OPEN F$ FOR RANDOM AS #1 LEN=1
160 GOTO 190
170 PRINT "Could not create ";A$;"--try again"
180 GOTO 110
190 ON ERROR GOTO 0
200 FOR C=1 TO L
210  DEF SEG = K + 64*(C-1)
220  FOR M = 0 TO 1023
230    PRINT #1, CHR$(PEEK(M));
240    PUT #1
250  NEXT M
260 NEXT C
270 CLOSE #1
280 PRINT "All Done!"
290 END

It'll dump anywhere in memory and runs under all versions of GWBASIC, BASICA, etc.
I am using this file right now to dump a ROM. When I hit run I didn't think it was working because, well, it takes a minute... I added two lines for my sanity:

Code:
1 CLS
205 LOCATE 10,1: PRINT"Complete ";C;" of ";L;" KB..."

It is about 6 MISSISSIPPI's to complete on KB on my Vendex Headstart Plus machine. Running in GW-Basic.
 
That was 12 years ago, according to the message log. Things are different today--I get used to days being bad most of the time now. The price of aging. :)
 
Back
Top