|
Joined: Apr 2012
Posts: 330 Likes: 33
Senior Member
|
OP
Senior Member
Joined: Apr 2012
Posts: 330 Likes: 33 |
After the recent overhaul of the Acorn System machines I'm now looking at the Microtan 65. The current Microtan emulation is actually very preliminary, or regressed over the years. It boots but little else. Current attempt at running BASIC: ![[Linked Image]](https://i.imgur.com/d1YcXCm.png) I'm slotifying the various cards that make up the system, starting with the TANEX (ROM/RAM expansion) card that contains BASIC: ![[Linked Image]](https://i.imgur.com/zUJUumW.png) Note: Video RAM is now randomised at startup for the authentic look. The TANEX card can also contain FORTH: ![[Linked Image]](https://i.imgur.com/kim7WEs.png) There are also various version of the monitor ROM (defaults to TANBUG V2.3) such as TANBUG V.3B which is intended to be used with a separate Mousepackets Designs Colour VDU card (with SAA5050): ![[Linked Image]](https://i.imgur.com/DUqjgXh.png) There's also TUGBUG V1.1 for use with a 80/82 Video terminal card (not yet fully working): ![[Linked Image]](https://i.imgur.com/nGsXJxh.png) In 1984 Ralph Allen Engineering produced a 6809 CPU card for the Microtan system, running their own RALBUG monitor. This didn't have it's own video output so requires the Ralph Allen Colour VDU card (with SAA5055): ![[Linked Image]](https://i.imgur.com/yWQ1SHf.png) Note: I knew the other SAA505X characters sets would come in handy one day  In 1980 in Electronics Today International there was a project to create a standalone game Space Invasion based upon the Microtan hardware, with dedicated sound hardware: ![[Linked Image]](https://i.imgur.com/XN4HVZo.png) There are a few Microtan games out there but are in .M65 snapshot format. These will be softlisted, and here's Moon Rescue: ![[Linked Image]](https://i.imgur.com/ySIeDdd.png) Current development status of various cards: TANEX - Good, adds extra RAM and ROM configurations. TANRAM - Good, adds more RAM. TANDOS - Preliminary, awaiting floppy images for testing. Mousepackets Colour VDU - Good. Ralph Allen Colour VDU - Good (for use with 6809). Microtanic 80/82 Video - Preliminary. Bulldog Sound Generator - Good, contains 2xAY8910 and used by various games. Moon Cresta plays classic Rydeen! There are a few software/toolkit ROM images out there that could be softlisted. The problem is that they each require mapping to different locations, and some (BASIC, FORTH, etc.) are two ROMs that only work if both are inserted into correct slots. This could get confusing to a user that doesn't know the system, ie. which ROMs should be in each slot, which configurations are valid, etc. To simplify this I intend to implement pre-populated TANEX/COMBO cards (both contain switchable ROM/RAM sets) with machine configuration to select ROMs. I currently have a TANEX board implemented with following configuration (this is a real hardware example): PORT_START("CONFIG")
PORT_CONFNAME(0x03, 0x00, "H2 Extension Eprom Board")
PORT_CONFSETTING(0x00, "Microsoft BASIC")
PORT_CONFSETTING(0x01, "Microtanic FORTH")
PORT_CONFSETTING(0x02, "2-Pass Assembler")
PORT_CONFNAME(0x1c, 0x00, "E2 Extension Eprom Board")
PORT_CONFSETTING(0x00, "Toolkit")
PORT_CONFSETTING(0x04, "High Resolution Graphics")
PORT_CONFSETTING(0x08, "ETI Space Invasion")
PORT_CONFSETTING(0x10, "<empty>")
Last edited by Pernod; 08/01/18 09:29 PM.
BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.
|
|
|
|
Joined: Apr 2012
Posts: 330 Likes: 33
Senior Member
|
OP
Senior Member
Joined: Apr 2012
Posts: 330 Likes: 33 |
The minimum configuration for a Microtan system is a CPU card which has it's own chunky video output, as seen in the first screenshots above. Some of the alternative video cards have their own video output in which case I add another screen for them. But other video cards send their video through the bus for the CPU card to output.
There are also HiRes boards that can be used singularly for monochrome output or as a set of 3 to produce RGB colour, and this can be mixed with the CPU card output to mix text and graphics. The HiRes and CPU cards both output 256x256. Any suggestions on how this can be implemented?
BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.
|
|
|
|
Joined: Mar 2001
Posts: 16,960 Likes: 76
Very Senior Member
|
Very Senior Member
Joined: Mar 2001
Posts: 16,960 Likes: 76 |
MAME is currently really bad at letting a second source take over an existing screen (I have a similar issue with 80-column cards on the Apple II). Perhaps this is something Vas can improve while he's messing with the layout stuff.
|
|
|
|
Joined: Apr 2012
Posts: 330 Likes: 33
Senior Member
|
OP
Senior Member
Joined: Apr 2012
Posts: 330 Likes: 33 |
I'm in no rush for the HiRes cards anyway, as I'm not aware of any available software that uses them. Just fixed a very long standing and annoying bug that makes all snapshots from http://www.geoff.org.uk/microtan/game_pack_1.htm now playable. The snapshot image contains a single byte for the stack pointer which was being applied to the 6502, but the 6502 stack is in page 1 so needed 0x100 adding, doh!
BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.
|
|
|
|
Joined: Apr 2012
Posts: 330 Likes: 33
Senior Member
|
OP
Senior Member
Joined: Apr 2012
Posts: 330 Likes: 33 |
Some more progress: - Microtan 6809 System: now has working keyboard, awaiting 4 more ROM images to complete the system. - TANDOS: I'm in contact with an owner at http://www.microtan.ukpc.net/pageProducts.html#DOS who has provided some floppy images in HxC format, they are FM 80trk, 10spt (same as BBC). I see we support them in hxchfe.dsk but how well are they supported? The 1793 FDC is struggling to seek a sector and not sure whether it's my implementation or a hxchfe.dsk issue. I'm tempted to extract RAW from HFE and define a new format using build_wd_track_fm to rule out hxchfe.dsk. - Space Invasion: Looking for advice on how to implement the sound effects, schematic at http://www.microtan.ukpc.net/Software/SpaceInvasionETI.pdf. I contacted the emulator author at http://www.geoff.org.uk/microtan/download.htm but he's never heard the actual hardware, and his sounds are borrowed from MAME Space Invaders (almost 20 years ago), so not much help.
BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.
|
|
|
|
Joined: Apr 2012
Posts: 330 Likes: 33
Senior Member
|
OP
Senior Member
Joined: Apr 2012
Posts: 330 Likes: 33 |
The Microtan system has a CPU board and various other boards connected via a backplane motherboard, the 6MHz clock from the CPU board is shared with all other boards via the backplane. I've setup the card slot devices similar to the Acorn System bus, see https://github.com/mamedev/mame/blob/master/src/devices/bus/acorn/bus.h.I'm defining the clock for the TANBUS device but would like each TANBUS_SLOT to inherit the clock from TANBUS, so that I can use DERIVED_CLOCK in the actual cards, is this possible? Alternatively, I could easily add the clock parameter to each TANBUS_SLOT, but would prefer to only set the clock once rather than for each slot. TANBUS(config, m_tanbus, 6_MHz_XTAL);
m_tanbus->set_space(m_maincpu, AS_PROGRAM);
m_tanbus->out_irq_callback().set(m_irq_line, FUNC(input_merger_device::in_w<IRQ_TANBUS>));
m_tanbus->out_so_callback().set_inputline(m_maincpu, M6502_SET_OVERFLOW);
m_tanbus->out_nmi_callback().set_inputline(m_maincpu, M6502_NMI_LINE);
TANBUS_SLOT(config, "tanex", m_tanbus, tanex_devices, "tanex");
TANBUS_SLOT(config, "tanbus0", m_tanbus, tanbus0_devices, "tanram");
TANBUS_SLOT(config, "tanbus1", m_tanbus, tanbus65_devices, "tandos");
...
BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.
|
|
|
|
Joined: Apr 2012
Posts: 330 Likes: 33
Senior Member
|
OP
Senior Member
Joined: Apr 2012
Posts: 330 Likes: 33 |
It's been a few years since I last looked at the Microtan, so after seeing one in action at the recent Retro Computer Festival in Cambridge I was encouraged to see what else could be improved. Firstly, I've slotified the keyboard/keypad devices, which leaves the main driver much cleaner. The real breakthrough is getting the 6809 system running, and booting a floppy, both of which are now working! The 6809 system has built in help, type HEL for system commands: ![[Linked Image from i.imgur.com]](https://i.imgur.com/nb2OrNu.png) Currently only have a single bootable disk image, type SYB to boot a system disk: ![[Linked Image from i.imgur.com]](https://i.imgur.com/LoUqFD8.png) I'd never heard of SK*DOS before so not familiar with what it can do, but am expecting another floppy Small 'C' to try soon.
BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.
|
5 members like this:
R. Belmont, robcfg, Walker, Kale, Duke |
|
|
|
Joined: May 2008
Posts: 44 Likes: 3
Member
|
Member
Joined: May 2008
Posts: 44 Likes: 3 |
|
|
|
|
Joined: Jun 2019
Posts: 2
Member
|
Member
Joined: Jun 2019
Posts: 2 |
Hi everyone. I can confirm that TANDOS is working fine in MAME 0.250. Great work, congratulations. [img] https://imgur.com/a/GwPVIJ4[/img]
Last edited by ajfa; 01/05/23 09:28 PM.
|
|
|
1 members (Pernod),
23
guests, and
4
robots. |
Key:
Admin,
Global Mod,
Mod
|
|
Forums9
Topics9,158
Posts119,911
Members5,034
|
Most Online1,283 Dec 21st, 2022
|
|
These forums are sponsored by Superior Solitaire, an ad-free card game collection for macOS and iOS. Download it today!
|
|
|
|