Rainbow-100 B low rom disassembly updated
Here ist the June 2013 edition of my low ROM disassembly (documented IDA 5 Freeware source and HTML).


Managed to find out more on how DC011 and DC012 display controllers are initialized (search for DC011, DC012 and INIT_VIDEO_HW). NVM handling is better documented (-> keyword NVM in HTML).

Also, it is now clear how option boards (the RAM board for 128 - 896K, as well as the communication board, which has a DMA and a non-DMA mode) are detected: via interrupts (-> keywords: OPTION or ENABLE_RAM_BOARD_DETECTION)

It's a pity that high intensity and underline, blink, reverse, as well as 80 / 132 column mode (with different dot pitches) aren't emulated yet. VT100 emulation seems a clever decision, but i can't imagine how the more exotic modes of the real hardware could be emulated (BIOS unsupported 48 line modes like http://rainbow-100.com/archives/154/ OR : SQUINT from Latrobe http://www.classiccmp.org/rainbow/files/goodnight/LATROBE/s/squint.arc - will provide a photo later)

BTW, the pc98gdc.c / PC98 MESS driver seems to implement the NEC 7220 display controller used in the color graphics extension (required for the early Windows 1 DEC released).

I was asked to document the 4 test jumpers present on the 100-B motherboard.

W13, W14 and W15 manufacturing test jumpers are represented by bits 1,2,3 of Diagnostic Read Register $0a

Jumper W18 pulls DSR line LOW when set (bit 7 of Status Read Register $11). It is possibly the 'unknown' jumper near the Z80 (requires verification).

Example from the low ROM disassembly:

seg000:0DEF test al, 80h ; W18 jumper / DSR (bit 7)
seg000:0DF1 jnz short loc_DE1

Location on the 100-B motherboard  : 

                [W 14 ]
[ 74 LS 245 ]
		[W 15 ]

                  [UNKNOWN JUMPER]


   Z 80

I wish someone could add jumpers and accurate NEC V20 (80186+) emulation - the latter was one of the more affordable upgrades on the 100-B. Note that the original V20 patch published on Jeff's 'DRIVE W' introduces serious timing issues.

My real hardware quickly got a worn out EPROM socket when i tried these - and other - hacks smile

Last edited by Bavarese; 06/11/13 04:13 PM.