1. What we need
- The original T1200XE BIOS dump. (dump it from your own T1200XE, you can also find it in the internet)
- a configured XTIDE option ROM image with header and checksum
- a tool to patch the option ROM into the BIOS binary file
- a hex-editor to make some final changes to the BIOS, which disables the original harddisk detection routine
- the possibility to erase and reprogram the BIOS EPROM
2. Preparing the BIOS dump
- the BIOS EPROM in the T1200XE is a 128kB type (27c010), but the actual BIOS code is only 64kB. Half the chip from 0x00000 to 0x0FFFFis empty
- If your BIOS dump is 128kB you should delete the empty half of the file before patching the option ROM to it. Otherwise the script might place the XTIDE-code into this empty space, which actually is not mapped to the adress space in the T1200XE.
- The BIOS file should only be the second 64k half of the dump.
- rename the BIOS file to BIOS.BIN
3. Preparing a XTIDE option ROM
- i prepared 2 files, that can be downloaded and used right away. One is for using just a single HDD, the other one also checks for a slave drive.
- download the latest version of XTIDE
- use the configuration tool to create a valid option ROM image
- we can use the larger ide_atl.bin, so we also have the boot menu feature included
- configuration should be: only 1 IDE controller, display mode 80 columns b&w (T1200XE dosn't have color/greyscale)
- after saving we get a 12kB option ROM file which is too big to fit into our BIOS file.
- rename the file to OptROM.BIN
- open the file with a hex editor
- change the 3rd byte from 0x18 to 0x14 (this is the size of the option ROM)
- delete all bytes from 0x2800 to the end of the file. (it should be all 0x00 except for the very last byte which is the checksum correction byte)
- calculate the new 8bit checksum for the whole file (feature of the hex editor (HxD for example)
- if it is not 0x00 we have to correct it by changing our new last byte at position 0x27FF
- type the checksum hex value into a calculator (in programming/hexadecimal mode) and press the +/- button
- write the result (last 2 digits) to position 0x27FF in the option ROM file.
- Checksum of the file should be 0x00 now, and file size 10kB
3. Patching XTIDE into the BIOS
- I found this very cool python script, that was made just for this purpose:
https://github.com/Sebastian-gthb/insert-OptROM-into-BIOS
- download the script, install python 3.x and you can use it
- put the script Patch_BIOS_with_OptROM.py together with our BIOS.BIN and OptROM.BIN in a folder and start the script.
- the script should run with no problem and produce a new BIOS file BIOS+OPT.BIN
4. Disabeling the original HDD detection
- XTIDE is now integrated into the Toshiba BIOS, but if we use harddisks or CF cards other than the originally predefined conner or JVC types, the Toshiba HDD detection will hang for about 1 or 2 minutes, before XTIDE gets startet
- to disable the original detection we have to change just 2 byte in the BIOS code with a hex editor
- open BIOS+OPT.BIN with a hex editor
- at position 0x0CF0 : replace 74 08 with EB 05
- write 00 to the last byte in the file (checksum correction)
- calculate new checksum and write the correction value to the last byte of the file (like we did with the option ROM file)
- go to the top of the file (very first position)
- add 0x10000 bytes of 0xFF to the file to make it a 128kB file to fit our BIOS EPROM
5. program EPROM
- use your EPROM programmer to reprogram the BIOS EPROM
[ferryTALE]