[img] Replacing the Master System ROM
MDFS::Info.Comp.BBC.SROMs.MegaROM/htm Search

The BBC Master system ROM is a single 128K ROM in a 28-pin package. It holds the MOS and sideways ROMs 9 to 15. ROMs 15 and 14 hold extra parts of the MOS, but ROMs 9 to 13 can be freely replaced with other sideways ROMs.

Unfortunately, it is not possible to get 28-pin 128K EPROMs, they come in 32-pin packages. However, you can build an IC carrier using a 32-pin IC socket and a 28-pin IC socket, wired together as shown in this diagram:
     +---------------+
     | 1--+  32-+    |
     +-2  |  31-+    |
   1---3  |  30 +-28 |
   2---4  |  29---27 |
   3---5  |  28---26 |
   4---6  |  27---25 |
   5---7  |  26---24 |
   6---8  |  25---23 |
   7---9  +--24   22-+
   8---10 |  23---21
   9---11 |  22---20
  10---12 |  21---19
  11---13 |  20---18
  12---14 |  19---17
  13---15 |  18---16
  14---16-+  17---15
Wiring diagram
See also Andrew Banham's site and RetroClinic.

ROM layout, MOS 3.20

 ROM     ROM   Memory
Address Number Address Contents
-------------------------------------------------
&00000         &C000   MOS 3.20
&04000    9    &8000   DFS 2.24 + SRAM 1.04
&07900    9    &B900   spare
&08000   10    &8000   ViewSheet B1.0
&0C000   11    &8000   EDIT 1.00
&0FFF8   11    &BFF8   spare
&10000   12    &8000   BASIC 4.00
&14000   13    &8000   ADFS 1.50
&18000   14    &8000   VIEW B3.0
&1BA00   14    &BA00   MOS code
&1C000   15    &8000   TERMINAL 1.20 + TUBE & MOS code
&1F8DF   15    &B8DF   spare
&1F900   15    &B900   Character set
All code between locations &4000 and &1BA00 in the system ROM (location &BA00 in ROM 14) can be completely replaced. Additional code can be put at the end of ROM 9 at location &B900 (&07900 in the system ROM).

This is the replacement system ROM I use: MOS321.rom, built with BuildMOS.

ROM 9 DFS 2.24+Mouse - DFS 2.24 with double density bugfix, SRAM 1.04, Mouse 1.00
ROM A ANFS 4.25
ROM B HADFS 6.00
ROM C BASIC 4.00
ROM D Acorn ADFS 1.53 - ADFS with IDE drivers
ROM E VIEW J3.0 - VIEW with extended keyboard input
ROM F TERMINAL 01 with Y2Kfix
MOS   MOS 3.20

ROM layout, MOS 3.50

MOS 3.50 juggles the code around even more, using the spare space at the end of the DFS ROM for the MOS code that originally shared the VIEW ROM which has got bigger, sharing disk access code between DFS and ADFS, and shifting SRAM into the MOS ROM.
 ROM     ROM   Memory
Address Number Address Contents
-------------------------------------------------
&00000         &C000   MOS 3.50
&04000    9    &8000   DFS 2.45
&06E44    9    &AE44   spare
&06F00    9    &AF00   MOS code
&08000   10    &8000   ViewSheet B1.01
&0BFE6   10    &BFE6   spare
&0C000   11    &8000   EDIT 1.50
&0FED8   11    &BED8   spare
&10000   12    &8000   BASIC 4.32
&14000   13    &8000   ADFS 2.03
&17E5F   13    &BE5F   spare
&17F8E   13    &BF8E   BASIC relocation table
&18000   14    &8000   VIEW B3.30
&1C000   15    &8000   TERMINAL 1.20 + TUBE, SRAM & MOS code
&1F900   15    &B900   Character set
All code between locations &4000 and &06EFF and between &08000 and &1C000 in the system ROM can be completely replaced. DFS and ADFS share code and must be in ROM slots four places apart so they can be switched between with EOR #4.
Best viewed with Any Browser Valid HTML 4.0!