Previous Thread
Next Thread
Print Thread
Torch Graduate #111246
11/09/17 02:33 PM
11/09/17 02:33 PM
Joined: Apr 2012
Posts: 209
UK
Pernod Offline OP
Senior Member
Pernod  Offline OP
Senior Member
Joined: Apr 2012
Posts: 209
UK
I've now got ROMs for the Torch Graduate device for the BBC Micro. I don't have schematics and the only info currently available is at http://chrisacorns.computinghistory.org.uk/8bit_Upgrades/Torch_Graduate.html. It's basically an IBM-PC with keyboard and video handled by the BBC. On the referenced page there's a link to a 'hires' image of the circuit board, it contains three ROMs. The 8088 is obviously the "bios" for the I8088, the 6502 "boot" is presented to the BBC on the 1MHz bus on pressing BREAK and transfers itself to the BBC to handle communication. I'm not sure about the ROM to the left of the I8088, my dump is labelled ibmz80 and contains 16 byte blocks of data. All ROMs are 8KB.

After looking through the rest of MAME for IBM-PC compatibles it looks like I should be using genpc.cpp as without any further info it contains all devices on the board and should be a known good implementation of the hardware. So what I have is:
Code
MCFG_CPU_ADD("maincpu", I8088, XTAL_15MHz / 3)
MCFG_CPU_PROGRAM_MAP(graduate_mem)
MCFG_CPU_IO_MAP(graduate_io)
MCFG_CPU_IRQ_ACKNOWLEDGE_DEVICE("mb:pic8259", pic8259_device, inta_cb)

MCFG_PCNOPPI_MOTHERBOARD_ADD("mb", "maincpu")

MCFG_ISA8_SLOT_ADD("mb:isa", "isa1", pc_isa8_cards, nullptr, false)
MCFG_ISA8_SLOT_ADD("mb:isa", "isa2", pc_isa8_cards, nullptr, false)

I'm using PCNOPPI for now as I'll add the 8255 separately. When run I get:
Code
Starting Torch Graduate ':1mhzbus:graduate'
Starting I8088 ':1mhzbus:graduate:maincpu'
Starting PCNOPPI_MOTHERBOARD ':1mhzbus:graduate:mb'
Starting Intel 8253 PIT ':1mhzbus:graduate:mb:pit8253'
Starting AM9517A ':1mhzbus:graduate:mb:dma8237'
Starting Intel 8259 PIC ':1mhzbus:graduate:mb:pic8259'
Starting 8-bit ISA bus ':1mhzbus:graduate:mb:isa'
Fatal error: assert: ../../../../../src/emu/dimemory.h:93: index >= 0 && index < int(m_addrspace.size()) && m_addrspace[index]

It's failing when looking for AS_IO space of "maincpu" to add the ISA mapping, but finding "maincpu" of the 6502 in bbcb. I tried changing the I8088 tag to something else but then complained of not finding required_device "maincpu". It looks like ibm5160_mb_device is hardcoded to require "maincpu" even though you specify it with MCFG_PCNOPPI_MOTHERBOARD_ADD("mb", "maincpu").
What are my options here?

I don't expect to get this 100% working until schematics are provided, but will be content for now with MS-DOS 2.11 booting on the PC side and the 6502 code being transferred and running on the BBC side.


BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.
Re: Torch Graduate [Re: Pernod] #111247
11/09/17 03:01 PM
11/09/17 03:01 PM
Joined: May 2004
Posts: 854
Germany
D
Duke Offline
Senior Member
Duke  Offline
Senior Member
D
Joined: May 2004
Posts: 854
Germany
Try MCFG_ISA8_CPU to set the cpu tag.

Re: Torch Graduate [Re: Duke] #111248
11/09/17 03:16 PM
11/09/17 03:16 PM
Joined: Apr 2012
Posts: 209
UK
Pernod Offline OP
Senior Member
Pernod  Offline OP
Senior Member
Joined: Apr 2012
Posts: 209
UK
Originally Posted by Duke
Try MCFG_ISA8_CPU to set the cpu tag.

That would only work if ibm5160_mb_device was not hardcoded to require "maincpu". I didn't want to touch genpc.cpp but I guess it needs to actually use the tag provided in MCFG_PCNOPPI_MOTHERBOARD_ADD("mb", "i8088") and not use "maincpu" regardless.


BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.
Re: Torch Graduate [Re: Pernod] #111249
11/09/17 03:21 PM
11/09/17 03:21 PM
Joined: Jan 2012
Posts: 782
C
crazyc Offline
Senior Member
crazyc  Offline
Senior Member
C
Joined: Jan 2012
Posts: 782
I was going to look at this but seems AJR just fixed it.

Re: Torch Graduate [Re: crazyc] #111250
11/09/17 03:31 PM
11/09/17 03:31 PM
Joined: Apr 2012
Posts: 209
UK
Pernod Offline OP
Senior Member
Pernod  Offline OP
Senior Member
Joined: Apr 2012
Posts: 209
UK
Originally Posted by crazyc
I was going to look at this but seems AJR just fixed it.

Awesome, thanks AJR. Out of curiosity what does putting ":" or "^" in front of a tag mean?


BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.
Re: Torch Graduate [Re: Pernod] #111251
11/09/17 03:56 PM
11/09/17 03:56 PM
Joined: Feb 2004
Posts: 1,968
Sydney, Australia
Vas Crabb Offline
Very Senior Member
Vas Crabb  Offline
Very Senior Member
Joined: Feb 2004
Posts: 1,968
Sydney, Australia
^ means relative to parent and : means relative to root


Who's Online Now
0 registered members (), 27 guests, and 3 spiders.
Key: Admin, Global Mod, Mod
Shout Box
Forum Statistics
Forums9
Topics8,555
Posts111,752
Members4,801
Most Online225
May 26th, 2014
Powered by UBB.threads™ PHP Forum Software 7.6.1.1
(Release build 20180111)
Page Time: 0.046s Queries: 15 (0.010s) Memory: 5.6248 MB (Peak: 5.8143 MB) Zlib enabled. Server Time: 2018-07-20 22:03:07 UTC