• Please review our updated Terms and Rules here

Need help defeating AMIBIOS Checksum

Anonymous Coward

Veteran Member
Joined
Aug 11, 2004
Messages
1,555
Location
Shandong, China
User Feipoa, NJRoadFan and myself have been attempting to build an adapter that allows a PS/2 mouse to connect to AT type machines without native support for such.

We have already tested and built said adapter. My version of it actually sandwiches in between the 8042 and the 40-pin DIP socket, and has been verfied working on machines based on the AWARD BIOS.

IMG_2990.JPG

PS2mod%2520Layout.jpg


This is largely possible because tools such as MODBIN are available that allow us to enable hidden options (such as PS/2 support).

MODBIN_PS2.jpg



AMI Hi Flex BIOSes also support PS/2 mice, and at one time there was also a tool available called AMIBCP that was functionally equivilant to modbin that would allow us to enable it. Unfortunately, these old versions of AMIBCP no longer seem to exist (at least they are not available online).

bcp21.jpg


The versions needed are as follows:

BCP14.EXE (for core BIOS 07/07/91)
BCP20.EXE (for core BIOS 12/12/91)
BCP21.EXE (for core BIOS 06/06/92) <-----I especially want this one
BCP21A.EXE (for core BIOS 11/11/92 and 08/08/93)



We have tried to modify the machine code directly, but AMIBIOS uses a checksum to ensure data integrity and/or prevent reverse engineering. Is there anyone on this forum that would be able to build a tool to recalculate the checksum on a modded BIOS image?
 
Have you tried contacting AMI to see if they will send you AMIBCP? Never hurts to try.
 
I'm skeptical about contacting AMI (I already contacted a former employee), but I will give it a shot.
I will look into HxD too, thanks for the tip.

In the meantime I am going to focus my effort on modifying the 128byte CMOS RAM as a temporary workaround.
 
This thread really should be titled "Native ps/2 mouse support for 386/486 motherboards". We had hoped to extract some wisdom from this forum, but I think BIOS AND CHECKSUM in the title was a little too dis-interesting.

For anyone who wants to follow this work, it will be documented in this thread.
 
Last edited:
Mostly in the wrong place...

Ever consider writing a BASIC program to do this? Probably can find one online even.

just sayin' :D
 
DOS mouse drivers seem to rely on Int 15h services provided by the BIOS to run the mouse. Protected mode systems go directly to the hardware, but may check flags set in the controller by the BIOS to determine if a mouse is present. Looking at source code shows that getting PS/2 mice working with operating systems is a bit of a science to get working reliably. The i8042 series of keyboard controllers is dumber than a doornail at doing anything. Typical IBM PC kludge job as usual.
 
Post your BIOS images here. I'll try to fix the not working one with the wrong checksum. What chipset are they for? AFAIK the BCP utilities you are asking for were never freely available due to some stupid NDA.
 
Hi George. Just saw your post. I am working with an SiS EISA chipset.

I'm pretty certain that all the code necessary to drive the PS/2 mouse is present (but disabled) in the BIOS. But since I couldn't get AMIBCP I've been focusing my efforts on a software solution until I can get some kind of result.
 
Back
Top