MAME

Thanks to the MAME developers, the following emulated hardware/software combinations have at least some functionality.

OS versionIndy Indigo 2
IRIX 5.3.x MAME 0.209+ MAME 0.210+
IRIX 6.2.x MAME 0.210+ MAME 0.210+
IRIX 6.5.22 MAME 0.210+ MAME 0.210+
IRIX 6.5.30 N/A N/A


6.5.30 is not supported on the Indy or Indigo2 hardware, that doesn't change with emulation.

MAME versions 0.211 and higher are recommended, if possible build the latest source code from the repository.

Hardware Emulation Status by SGI Model

CPU
GFX
NET
R3K R4K R5K R8K R10K Newport XL8 Newport XL24
Indy N/A YES Not Implemented - - YES YES TODO
Indigo2 N/A YES - Not Implemented Not Implemented YES YES TODO


Note: The Indy was chosen because of high quality documentation. SGI released the documentation so that Linux could be ported to it.

The Indigo2 has very similar video and peripherals to the Indy.

Video options for the above hardware are:

  • Serial Terminal (default)
  • XL8
  • XL24


The IRIX installations will complete successfully, some demo and other applications have been tested. If something doesn't work please submit a bug report so it can be fixed.

Details

MAME is a well known arcade and hardware emulator focusing on verbatim accuracy and documentation of all emulated machines. This means that there's little in the way of shortcuts. Accuracy always wins over performance, although performance is constantly reviewed and improvements are made.

Download

Not expected to be "stable" until at least 0.211 probably later. https://github.com/mamedev/mame/releases

Compilation


For MAME .208, the following flags have been tested by dexter1 On his Intel build machine:

make -j5 SOURCES=src/mame/drivers/indy_indigo2.cpp REGENIE=1 TOOLS=1 OPTIMIZE=3 ARCHOPTS_C=-march=native ARCHOPTS_CXX=-march=native

Setup

BIOS

From the following page: https://archive.org/download/MAME211RomsOnlyMerged

Do a Ctrl+F and search for the following BIOS Files

SGI Model BIOS Filename Supported Version String
Indigo 1 indigo3k.zip or indigo3k.zip No N/A
Indigo 2 indigo2_4415.zip Yes N/A
Indy R4K indy_4610.zip Yes 5.0 Rev B6 IP24 Sep 28, 1994 (BE)
Indy R5K indy_5015.zip No 5.3 Rev B10 R4X00/R5000 IP24 Feb12, 1996 (BE)


Required Additional BIOS Filename
Microsoft Natural Keyboard kb_ms_natural.zip
PS/2 Keyboard ps2_keybc.zip


The downloaded BIOS files should all be copied in their original zip file to the \MAME\ROMS folder.

IRIX

There are several locations to download depending on your desired version.
* IRIX 5.3 is available on [[https://archive.org/details/sgi_IRIX_5.3_for_Indy_R4400_175MHz | Archive.org]]
* IRIX 6.2 is available on [[http://usftp.irixnet.org/sgi-irix/irix-6.2/ | IRIX.cc]]
* IRIX 6.5 is available on [[http://usftp.irixnet.org/sgi-irix/irix-6.5/network-installs/ | IRIX.cc]]
* IRIX Patches for 6.2 and 6.5 are available on [[http://usftp.irixnet.org/sgi-irix/patches/ | IRIX.cc]]

Hard Disk Image

MAME includes a utility to create hard drive images called 'chdman'.
http://www.csgnetwork.com/mediasizecalc.html

This command will create a 2 GB Hard drive image

chdman createhd -ss 512 -chs 2000,16,128 -c none -o Indy_2g.chd


This command will create a 4 GB Hard drive image

chdman createhd -ss 512 -chs 8192,16,64 -c none -o Indy_4g.chd

Starting Emulation

MAME has a lot of command line options. Once you've decided on the correct combination for you, it would be recommended to create a shell script or command script to start your session.
The Base MAME Command
Change the following hard drive and cd-rom image names to match what you are using.

mame64 indy_4610 -window -mouse -ui_mouse -cheat -hard1 .\roms\Indy2g.chd -cdrom .\roms\irix5.3_indy_r4400.iso

Current builds of MAME now support more than one graphics option.
To Select a Graphics card:

  • Serial Terminal Only (default)
  • Virtual Terminal (stops responding midway through the boot messages 5/12/2019)
    • -hpc3:ioc2:rs232b terminal
  • -gio64_gfx xl8
  • -gio64_gfx xl24


Additional Troubleshooting or debugging can be enabled with the following:

  • -log
  • -verbose
  • -debug
    • MIPS Assembly


Slow down emulation actually improves responsiveness.

  • [Scroll Lock] Enable partial keyboard emulation
  • [~] Open MAME Menu
  • Cursor Up/Down to find maincpu
  • Cursor Left/Right to set speed
  • [~] Close MAME Menu
  • [Scroll Lock] Enable full keyboard emulation


Change CD's

  • [Scroll Lock] Enable partial keyboard emulation
  • [tab] Open MAME Menu
  • Cursor Up/Down to 'File Manager'
  • Press[Enter]
  • Cursor Up/Down to 'cdrom (cdrm)'
  • Cursor [ESC], [Up], [Down] and [Enter] to find and select the desired ISO
  • [tab] Close MAME Menu
  • [Scroll Lock] Enable full keyboard emulation

IRIX Installation

Running

While at the PROM command

Indy PROM
Enter "setenv -f eaddr 08:00:69:12:34:56" or else IRIX will just spit out errors on install.

Indigo2 PROM
For now the last post in this forum thread is the best reference.
https://forums.irixnet.org/thread-1012-page-4.html

Installation

Doing a CD based IRIX install at this point is fairly standard. Networking is not currently supported.

Thanks

Thanks to the MAME dev's that took on this task, amazing work! Also thanks to the many Discord users for their help testing and sharing their knowledge.