About This Page

Information from Tandy memos and technical bulletins were combined to form this list. Three things to note:

  • Analyzing the ROMs and researching for possible mistakes took a lot of the TRS-80 community out there, and I thank them all. Special thanks to George Philips and Ken Brookner for tackling the hardest issue of them … ROM A Checksum 1591
  • Tandy preferred to provide two checksums for ROM A, which were checksums of the first 4K and the second 4K. Thanks to George Philips who figured it out, you can convert from a xxxx/yyyy checksum by adding the two together and dropping the extraneous 1 which appears before it (so, for example: BBC4/DA75 would be BBC4 + DA75, which is 19639. Drop the 1, and you get 9639).
  • ROM C uses locations $37E8 and $37E9 as a pass-through for printer information. PEEKing a ROM to dump it will not work unless the printer is off because those 2 locations will contain whatever data they contain otherwise. When MEMTEST does its CRC checks, it skips those 2 locations. Thanks also to George Philips for that info.

Official Combinations:

Non-Gate Array (1st Generation Hardware)

 
Description
ROM A
ROM B
ROM C
 
Standard (v1) *
BBC4/DA75 aka 9639
407C
1591
 
Version A (v2)
B504/DA42 aka 8F46
407C
48BC
 
Network III Student Station v1
B523/DA42 aka 8F65
407C
48BC
 
Network III Student Station v2
B504/DA42 aka 8F46
407C
48BC
 
Network 4 Student Station
B504/DA42 aka 8F46
407C
33CB
 
England (50Hz)
B523/DA42 aka 8F65
407C
48AA
 
French
B523/DA42 aka 8F65
407C
43AD
 
German
B523/DA42 aka 8F65
407C
3080
*
Both the Model III and Model 4 list 9639 407C 1591 as a valid ROM combination, which is somewhat baffling. That combination will run on both a Model III and a Model 4. It contains some code calling the Model 4 CRTC which runs fine on a Model 4 and is ignored on a Model III.

Gate Array (2nd Generation Hardware + Model 4D)

 
Description
ROM A
ROM D
 
Standard
B504/DA42 aka 8F46
407C/48BC
 
Network 4 Student Station
B504/DA42 aka 8F46
407C/33CB

ROM A:

 
Checksum
Alt CRC
Part No.
Description
 
9639
BBC4/DA75
8041364
v1.0 – First production run of US and English Model 4
 
8F65
B523/DA42
8048364
Model 4 and Model 4 International (Required on French, German, and Educational), and Network III Student Station v1
 
8F46
B504/DA42
8048364A
8075364
v2.0 (a/k/a Model 4 Version A) – Subsequent Model 4 runs (including Model 4D, German, French, Gate Array, and Network III Student Station v2)

ROM B:

 
Checksum
Part No.
Description
 
407C
8040332
This is ROM B for every Model III and Model 4

ROM C:

 
Checksum
Part No.
Description
Status
 
1591
8048316
Generation 1, 60Hz – 1983
 
48BC
8042316
Generation 2, 60Hz – 1983 (can include Education and Network III Student Station v1 and v2)
 
33CB
8075317
Network 4 Student Station (Requires B504/DA42)
MISSING
 
38BC
8042316
U.S. 60Hz including Education
MISSING
 
48AA
8049005
English (50hz)
MISSING
 
3080
8049004
German (Must be used with 8049007 character generator)
 
43AD
8049003
French AZERTY (Must be used with 8049007 character generator)

ROM D:

Gate Array Model 4s and Model 4Ds contain only two ROM chips, an 8K ROM A, and then a 8K ROM D which is just ROM B and ROM C in one ROM (with 2K wasted space). The actual code in the D ROM remains the same, only the ROM size has been changed:

 
Checksum A
Checksum B and C
Part No. for D ROM
Description
 
8F46
B:407C and C:48BC
8075369
Gate Array Model 4 and Model 4D (B and C are merged)
 
8F46
B:407C and C:33CB
8075370
Gate Array Model 4 and Model 4D Network 4 (B and C are merged)

ROM C/D by FRANK DURDA IV:

 
Checksum
Description
 
5C1D
Frank Durda NGA XROM v3.33 90-05-15. This is a C ROM. Requires A:8F46 B:407C
 
B:407C and C:5C1A
Frank Durda GA XDROM v3.33 89-04-01. This is a D ROM. Requires A:8F46
 
500C
Frank Durda ROM C v1.24 86-01-04. This ROM was written by Frank and submitted to Radio Shack on May 5, 1985 for consideration as a catch-all ROM C that could include all other U.S. ROM C’s (and replace 1591, 48BC, 33CB, 38BC) plus additional fixes. This eventually became his XROM and XDROM. This ROM had the following changes/updates:
  • Ability to boot TRSDOS 6 from a hard disk drive without the use of a start-up diskette on WD1000 or WD1010-xx hard disk controllers.
  • Ability to boot from the Network 3 or Network 4 by pressing 3 or 4 keys, respectively.
  • New Model III mode keyboard driver handles rollover correctly.
  • New keyboard driver can produce all ASCII characters. (Current version does not allow brackets, braces and other special symbols.) All keys are now repeatable.
  • Ability for a Model III mode operating system or user program to adjust the keyboard repeat rate. Previously this value was not adjustable.
  • Real-Time-Clock and Cursor Blink run properly at 2Mhz or 4Mhz. (Previously both ran twice as fast at 4Mhz, making the clock useless in Model III mode.)
  • The floppy drives timeout after a several seconds on boot-up to prevent drive and media wear. Floppy booting speed has also been increased and the noise level reduced, by using the correct step rate.
  • Screen print in Model III mode can now be initiated by CTRL: or SHIFTDOWN-ARROW*. Previously you had to press LEFT-SHIFTDOWN-ARROW*. CTRL: is compatable with TRSDOS 6
  • Improved interrupt handler that reduces the chance of lost RS-232 traffic at all speeds has been added. This change will also allow external I/O bus interrupts to be used while RS-232 traffic is present. (Previously this was not possible in Model III mode.)

Character Generators:

Checksum
Part
No.
Code
Name
Description
19B9
8044316A
M3/4
For U.S. and Kana
4A0E
8049007
M4I
For U.S. and Europe (All Model 4’s)

German Keyboard:

ROMs which are not US/UK carry not only different character generators but different keyboards, making using them in an emulator somewhat difficult.

Thanks to Volker Kruckemeyer, this is the German keyboard