diff --git a/cardBase.go b/cardBase.go index 85e9f32..9c47921 100644 --- a/cardBase.go +++ b/cardBase.go @@ -72,6 +72,10 @@ func (c *cardBase) loadRom(data []uint8) { // The file covers the full Cxxx range. Only showing the page // corresponding to the slot used. c.romCxxx = newMemoryRangeROM(0xc000, data, "Slot ROM") + } else if len(data)%0x100 == 0 { + // The ROM covers many 256 bytes pages oc Csxx + // Used on the Dan 2 controller card + c.romCsxx = newMemoryRangePagedROM(0, data, "Slot paged ROM", uint8(len(data)/0x100)) } else { panic("Invalid ROM size") } diff --git a/cardBuilder.go b/cardBuilder.go index 7fc5039..de6df8c 100644 --- a/cardBuilder.go +++ b/cardBuilder.go @@ -35,7 +35,7 @@ func getCardFactory() map[string]*cardBuilder { return cardFactory } cardFactory = make(map[string]*cardBuilder) - //cardFactory["brainboard"] = newCardBrainBoardBuilder() + cardFactory["brainboard"] = newCardBrainBoardBuilder() cardFactory["brainboard2"] = newCardBrainBoardIIBuilder() //cardFactory["dan2sd"] = newCardDan2ControllerBuilder() cardFactory["diskii"] = newCardDisk2Builder()