Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
06987 Known Issues/To-Do's Minor Always 20 days ago 19 days ago
Tester ballyalley View Status Public Platform MAME (Official Binary)
Assigned To ballyalley Resolution Open OS Windows Vista/7/8 (64-bit)
Status [?] Assigned Driver astrocde.cpp
Version 0.197 Fixed in Version Build
Summary 06987: Bally Arcade, Astrocade: [Enhancement] Best Way to Report Missing Vital Features?
Description The Astrocade emulation in MAME is missing several vital features. While the emulation does support the cartridges, it doesn't support many other standard features. I'd like to know how to report each missing feature. Do I create a separate report (or "ticket") for each feature that should be added? That seems like the correct thing to do, but maybe I need to report all missing features in one "bug" report.

The Astrocade emulation needs to support the following features:

I) Tape Input I/O - Hundreds of programs for the Astrocade were released on tape. Many of these are available from BallyAlley.com in WAV format. There is no way to load these into the Astrocade emulator. There are three kinds of tape I/O that needs to be added to the emulator.

1) 2000-baud Tape I/O via the re-release of the Bally BASIC cartridge. The version of BASIC with the built-in 2000-baud interface is commonly called "AstroBASIC."

2) 300-Baud Tape Interface - The original Bally BASIC cartridge used tape I/O with an external 300-baud tape interface that plugged into hand controller port 3 and the light pen port. The tape system used KCS (Kansas City Standard).

3) 2000-baud Tape I/O via the Blue Ram expansion - The Blue Ram unit, an expansion that plugged into the 50-pin edge connector on the back of the Astrocade, had it's own 2000-baud interface which used a National Semiconductor INS8154 RAM I/O chip. Expansion RAM is supported by the Astrocade emulator, but the Blue Ram's I/O isn't supported at all.

II) Common Features that are missing from Astrocade Emulation

1) Hot-Swap Cartridge Port - The Astrocade supports hot-swapping cartridges (changing cartridges without turning off the system). This may seem like a useless feature under emulation (why not just turn the system on and off?), but hot-swapping cartridges is used by many later programs to exchange data. For instance, some BASIC tapes were converted to "load" from cartridge, but in order to make this work, first the game/program was inserted, then the BASIC cartridge was hot-swapped into its place.

2) External Printer (using hacked 300-baud Interface) - Bally BASIC supported printing via the 300-baud interface if it was hacked to support a serial printer.

III) Blue Ram I/O - Support for keyboard and printer is not available

1) External Keyboard - The Blue Ram's I/O allowed for an external 63-key ASCII keyboard to be used with the system. This allowed a user to not have to use the 24-key keypad on the Astrocade.

2) External Printer (using The Blue Ram's I/O) - The Blue Ram allowed machine language and BASIC programs to be printed.

There are other features that are missing from the MAME Astrocade emulator, but these are just a sample of some of them that should be added. Most important of all are the missing 300-baud/2000-baud tape I/O, as without this, modern emulation users can not load or save programs from BASIC. Since the "AstroBASIC" was included with the the Astrocade starting in 1981, this feature is essential for proper use of the system.

Please tell me the best way to report these missing features so that they can be added by the MAME Team.

Thanks.

Adam
Steps To Reproduce All of these features are missing.
Additional Information
Flags
Regression Version
Affected Sets / Systems Bally Arcade, Astrocade
Attached Files
 
Relationships
There are no relationsihp linked to this issue.
Notes
1
User avatar
No.15055
cuavas
Administrator
19 days ago
Thanks for making this list of missing functionality. Since you're clearly more familiar with the system that anyone currently on the MAME team, we eagerly await your pull request(s) implementing this much-needed and long-overdue functionality.