Spectrum MAME for Complete Beginners

Struggling with Fuse or trying to find an emulator with a specific feature. Ask your questions here.
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Spectrum MAME for Complete Beginners

Post by PeterJ »

I've always found MAME challenging, but for some reason I wanted to get Spectrum Emulation working. These are my notes so far (based on Windows 10). I'm sure there are far simpler ways of doing it, but I wanted to start from a clean install so I can understand how it works. If anyone can help with my remaining issues at the end of the post that would be much appreciated.

Download MAME from here. This will provide you with a self extracting archive file. Open the file and you will be given a default extraction location. I suggest changing the default, otherwise your downloads folder will be used and it won't by default create a subfolder for itself. Best to create a sub-folder called MAME and use that.

Next thing you need is the ROMs. You need a file called 'spectrum.zip'. I'm not going to link to it here, but it's quite easy to find. Place the file into the ROMs folder. Saying Wow! may help with your searching.

Now, we need to look at the file here which shows all the Spectrum games that MAME knows about along with the file name conventions:

I'm going to try Doomsday Castle. Looking at the file, this is what I need:

Code: Select all

<software name="doomcasl">
		<description>Doomsday Castle</description>
		<year>1983</year>
		<publisher>Fantasy Software</publisher>
		<part name="cass" interface="spectrum_cass">
			<dataarea name="cass" size="39240">
				<rom name="doomsday castle.tzx" size="39240" crc="817f57b4" sha1="bb53b2e97f535897723ff0b18bd6a0a4f905948e"/>
			</dataarea>
		</part>
</software>
Create a folder called 'software' in your MAME folder, and in that create a folder called 'spectrum_cass'. Download Doomsday Castle (the tzx version) and rename the zip to doomcasl.zip and place it into the above folder.

You should check that the SHA of doomsday castle.tzx matches the crc in the above file by using this site.

Go to the command line and go into the folder where MAME is stored.

Here is where my problems start. I believe that the following should work, but it does not:

Code: Select all

mame64 spectrum -cass doomcasl 
What I have to type is:

Code: Select all

mame64 spectrum -cass "C:\Users\Peter Jones\Downloads\MAME\software\spectrum_cass\doomcasl.zip"
This then opens Spectrum emulation. Type LOAD "" (For me symbol shift was set to the right hand shift key). The press ENTER. Now press 'ScrLk', then F2 and the game will start loading.

A few more useful tips:

Left Alt + Enter takes you to Windowed mode

Typing the following at the command line will show you the set-up file types:

Code: Select all

mame64 spectrum -listmedia

Code: Select all

C:\Users\Peter Jones\Downloads\MAME>mame64 spectrum -listmedia
SYSTEM           MEDIA NAME       (brief)    IMAGE FILE EXTENSIONS SUPPORTED
---------------- --------------------------- -------------------------------
spectrum         snapshot         (dump)     .ach  .frz  .plusd.prg  .sem  .sit  .sna  .snp  .snx  .sp   .z80  .zx
                 quickload        (quik)     .raw  .scr
                 cassette         (cass)     .wav  .tzx  .tap  .blk
So, problems I have so far are as follows:

Why do I have to enter the full path of the file, even though I believe Software is the default software folder.

Secondly, how do I add support for other media types?

Thirdly, if I try and load via the GUI (Just type MAME64), I get this error (I have checked the path is set to 'Software'

Image
akeley
Dynamite Dan
Posts: 1048
Joined: Sat Feb 01, 2020 5:47 pm

Re: Spectrum MAME for Complete Beginners

Post by akeley »

I think you should let MAME know where the roms are. Open mame.ini and add your rom location to "rompath". In the UI you can do it from the menu.

Writing this from memory, so may not be 100% accurate. I will give it a go later, just need to drag Software Lists from my seedbox.

You can also use MAMEUI which is a version with better interface: http://www.mameui.info/
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

Thanks [mention]akeley[/mention], but tried that and didn't work:

This is from mame.ini

Code: Select all

#
# CORE SEARCH PATH OPTIONS
#
homepath                  .
rompath                   roms
hashpath                  hash
samplepath                samples
artpath                   artwork
ctrlrpath                 ctrlr
inipath                   .;ini;ini/presets
fontpath                  .
cheatpath                 cheat
crosshairpath             crosshair
pluginspath               plugins
languagepath              language
swpath                    software
All these folders are in the MAME folder that I'm running mame64 from.
akeley
Dynamite Dan
Posts: 1048
Joined: Sat Feb 01, 2020 5:47 pm

Re: Spectrum MAME for Complete Beginners

Post by akeley »

Ok...how about trying to make dirs inside "rom" dir corresponding to the software list names?

https://www.mameworld.info/ubbthreads/s ... =5&o=&vc=1
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

akeley wrote: Tue Jan 19, 2021 1:48 pm Ok...how about trying to make dirs inside "rom" dir corresponding to the software list names?

https://www.mameworld.info/ubbthreads/s ... =5&o=&vc=1
Hi [mention]akeley[/mention],

This is what I have:

Image

and, this is inside the zip:

Image
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

Hi [mention]akeley[/mention], I think you may have helped!

I moved the spectrum_cass folder to the mame/roms folder and this works:

Code: Select all

mame64 spectrum -cass doomcasl 
So, why is that when the software path is set to look in mame/software ?
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

That has sorted running from the command line, but I still get this when trying through the GUI:

Image
akeley
Dynamite Dan
Posts: 1048
Joined: Sat Feb 01, 2020 5:47 pm

Re: Spectrum MAME for Complete Beginners

Post by akeley »

PeterJ wrote: Tue Jan 19, 2021 1:56 pm So, why is that when the software path is set to look in mame/software ?
It's just a MAME quirk. I don't know what "software" is for, but games, even computer ones, are "roms".

I'm not sure why are you getting this error from the UI. "diagrom" is an Amiga thing :) It's odd.

I did manage to get it working from GUI. I'm using 0.222 MAME UI, with 0.222 arcade romset. For this, I just dropped the spectrum_cass directory into the /roms dir in MAME. Then added the path to it in UI's Directories, and it was processed. I think MAME needs to audit/rescan roms when you add a new source, so maybe try to do that from the UI.
User avatar
Luzie
Manic Miner
Posts: 911
Joined: Fri May 01, 2020 2:07 pm

Re: Spectrum MAME for Complete Beginners

Post by Luzie »

Continue here from Thread "MAME 0.211 and the Spectrum" at: viewtopic.php?p=55950#p55950

Got Spectrum-Emulation working with keyboard-artwork (MAME64 under Win10 x64). Description here:

Unpacked MAME64 (Download mame0227b_64bit.exe from: https://www.mamedev.org/release.php ) to C:\MAME
Put ROM "Spectrum.zip" (Size about 321 kBytes) to C:\MAME\ROMs\
Put Artwork "Spectrum.zip" (Size about 3,5 MByte) (containing e.g. thelordsofmidnight_cpo.png) to C:\MAME\Artwork\
Run "MAMEUI64.exe -cc" to create MAME.INI with default-settings
Run Spectrum-Emulation with "MAMEUI64 spectrum"
Now you can type in emulated Spectrum but cannot access TAB-Menu from MAME. To access this menu select "File/Partital Keyboard Emulation" or "File/Show Tab Menu". Here you can changes keyboard-artwork under "Video Option/Screen #0".
-> Update: You can also select these from "Options/Video" from MAMEs GUI.

.TAP/.TZX / .WAV-Files can be mounted, played and stopped with "Media/Cassette...".
These Tape-Files come to e.g.: C:\MAME\Software\spectrum_cass\elite48k.zip

Image

More infos on Emulation-Options can be found under: MESS User's Manual at: http://mess.redump.net/mess/howto
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

Thank you for this [mention]Luzie[/mention]. Can I confirm a couple of things?

You link to the MAME64 download, but I think you are using MAMEUI:

http://www.mameui.info/

MAMEUI64.exe is not present in the normal MAME download that you linked to.

When I run MAMEUI64 spectrum I get full screen rather than the windowed mode that you show. I pressed ALT + ENTER which brings it into windowed mode, but I don't get the menus.

I can only access the internal MAME UI by using ScrLock + TAB (as mentioned in the useful MESS FAQ you linked to)

Image
User avatar
druellan
Dynamite Dan
Posts: 1475
Joined: Tue Apr 03, 2018 7:19 pm

Re: Spectrum MAME for Complete Beginners

Post by druellan »

Luzie wrote: Wed Jan 20, 2021 8:53 pm Now you can type in emulated Spectrum but cannot access TAB-Menu from MAME. To access this menu select "File/Partital Keyboard Emulation" or "File/Show Tab Menu". Here you can changes keyboard-artwork under "Video Option/Screen #0".
-> Update: You can also select these from "Options/Video" from MAMEs GUI.
Also, before starting the emulation from Configure Machine -> Advanced Options select UI Active to enable the TAB menu. ;)
User avatar
Luzie
Manic Miner
Posts: 911
Joined: Fri May 01, 2020 2:07 pm

Re: Spectrum MAME for Complete Beginners

Post by Luzie »

PeterJ wrote: Thu Jan 21, 2021 9:19 am Thank you for this @Luzie. Can I confirm a couple of things?
...
Thank you very much for making the corrections [mention]PeterJ[/mention]! Seems it was to late in the night for me to write down all right 8-)
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

No problem [mention]Luzie[/mention],

Your post was very useful. Can I ask how how launch the Spectrum iemulation n the window you showed in your screenshot, with the menus at the top.
User avatar
Luzie
Manic Miner
Posts: 911
Joined: Fri May 01, 2020 2:07 pm

Re: Spectrum MAME for Complete Beginners

Post by Luzie »

PeterJ wrote: Thu Jan 21, 2021 5:23 pm No problem @Luzie,

Your post was very useful. Can I ask how how launch the Spectrum iemulation n the window you showed in your screenshot, with the menus at the top.
Maybe setting menu to 1 in Spectrum.INI at:

# WINDOWS VIDEO OPTIONS
#
menu 1
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

Thanks [mention]Luzie[/mention],

That worked. If anyone else wants to set it up, and is having troubles please post here. Don't be shy!
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

Image
User avatar
Pegaz
Dynamite Dan
Posts: 1210
Joined: Mon Nov 13, 2017 1:44 pm

Re: Spectrum MAME for Complete Beginners

Post by Pegaz »

Here I found the latest MESSUI64 files:
http://messui.1emulation.com/
Is it better to use this version instead of MAMEUI, for computer emulation?
At least it takes up less space, and maybe it's less demanding too?
btw, I'm struggling to find the latest 0.227 compatible BIOS set for Spectrum (spectrum.zip) and I can't find it in this size (464 Kb), mentioned here:
http://adb.arcadeitalia.net/dettaglio_m ... e=spectrum

I only found some older spectrum.zip file (250,009 bytes), for now...
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

Pegaz wrote: Thu Jan 21, 2021 7:30 pm Here I found the latest MESSUI64 files:
http://messui.1emulation.com/
Is it better to use this version instead of MAMEUI, for computer emulation?
At least it takes up less space, and maybe it's less demanding too?
btw, I'm struggling to find the latest 0.227 compatible BIOS set for Spectrum (spectrum.zip) and I can't find it in this size (464 Kb), mentioned here:
http://adb.arcadeitalia.net/dettaglio_m ... e=spectrum

I only found some older spectrum.zip file (250,009 bytes), for now...
That's the version I used [mention]Pegaz[/mention]

This is the properties of spectrum.zip that contains the ROMS's

Image

The contents of which are as follows:

Code: Select all

Directory of C:\Users\Peter\Downloads\MAMEUI64\ROMs\spectrum

21/01/2021  19:36    <DIR>          .
21/01/2021  19:36    <DIR>          ..
21/01/2021  19:36            16,384 1986es.rom
21/01/2021  19:36            16,384 48e.rom
21/01/2021  19:36            16,384 48turbo.rom
21/01/2021  19:36            16,384 bsrom118.rom
21/01/2021  19:36            16,384 bsrom140.rom
21/01/2021  19:36            16,384 deutsch.rom
21/01/2021  19:36            16,384 groot.rom
21/01/2021  19:36            16,384 gw03.rom
21/01/2021  19:36            16,384 hdt-iso.rom
21/01/2021  19:36            16,384 imc.rom
21/01/2021  19:36            16,384 iso8bm.rom
21/01/2021  19:36            16,384 isomoje.rom
21/01/2021  19:36            16,384 jgh.rom
21/01/2021  19:36            16,384 plus4.rom
21/01/2021  19:36            16,384 psycho.rom
21/01/2021  19:36            16,384 sc01.rom
21/01/2021  19:36            16,384 spectrum.rom
21/01/2021  19:36            16,384 turbo2_3.rom
21/01/2021  19:36            16,384 turbo4_4.rom
              19 File(s)        311,296 bytes
               2 Dir(s)  298,450,038,784 bytes free

C:\Users\Peter\Downloads\MAMEUI64\ROMs\spectrum>
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

I'm in the swing of things now. This is Spectrum 128K emulation. Just follow the instructions above but find spec128.zip (You can exclaim WOW when you find it), and download the artwork here.

Image
User avatar
Pegaz
Dynamite Dan
Posts: 1210
Joined: Mon Nov 13, 2017 1:44 pm

Re: Spectrum MAME for Complete Beginners

Post by Pegaz »

[mention]PeterJ[/mention]

Peter, as far I can see from your spectrum.zip properties screenshot, you use MAMEUI64, but in the first link I posted, you can find latest MESSUI64, which exclude arcade roms and takes less space on disk.
btw, I have same romset as you, but on the second link I posted, it says that the full 0.227 Spectrum romset is 464 Kb and contains these files:

Code: Select all

NAME                 |      SIZE | BIOS                 | STATUS  | MERGE                | REGION            |     OFFSET | OPT | CRC      | SHA1                                    
---------------------+-----------+----------------------+---------+----------------------+-------------------+------------+-----+----------+-----------------------------------------
0,1.eprom1           |      8192 | p                    | good    |                      | maincpu           |          0 | no  | 6b807b7a | 7d14f1929c086b0954edb386f02b06ed283b602a
2,3.eprom2           |      8192 | p                    | good    |                      | maincpu           |       2000 | no  | f54a389b | eab62eda635a56c24132022947fdeefcd18215f5
48e.rom              |     16384 | sp                   | good    |                      | maincpu           |          0 | no  | f051746e | 9e535e2e24231ccb65e33d107f6d0ceb23e99477
48turbo.rom          |     16384 | 48turbo              | good    |                      | maincpu           |          0 | no  | 56189781 | e62a431b0938af414b7ab8b1349a18b3c4407f70
1986es.rom           |     16384 | 1986es               | good    |                      | maincpu           |          0 | no  | 9e0fdaaa | f9d23f25640c51bcaa63e21ed5dd66bb2d5f63d4
bsrom118.rom         |     16384 | bsrom118             | good    |                      | maincpu           |          0 | no  | 1511cddb | ab3c36daad4325c1d3b907b6dc9a14af483d14ec
bsrom140.rom         |     16384 | bsrom140             | good    |                      | maincpu           |          0 | no  | 07017c6d | 2ee2dbe6ab96b60d7af1d6cb763b299374c21776
deutsch.rom          |     16384 | deutsch              | good    |                      | maincpu           |          0 | no  | 1a9190f4 | 795c20324311dd5a56300e6e4ec49b0a694ac0b3
diagrom.v28          |     16384 | diagv28              | good    |                      | maincpu           |          0 | no  | aadf967e | 6fbdb11e475499655df36343a22f15d67f578165
diagrom.v31          |     16384 | diagv31              | good    |                      | maincpu           |          0 | no  | cddbb11e | 3ed203034fe1562ee7216fad06309d3f7033a967
diagrom.v33          |     16384 | diagv33              | good    |                      | maincpu           |          0 | no  | 0fb080e1 | 222f535ae277d0b8ce6c27b75319da9c45f8cadc
diagrom.v34          |     16384 | diagv34              | good    |                      | maincpu           |          0 | no  | 50478f29 | 1e55af6e7bb24090ce052e7536e91f92492fe168
diagrom.v35          |     16384 | diagv35              | good    |                      | maincpu           |          0 | no  | c869b642 | 61eb786249a207ea57cdea6bb01fcd0b95c218f2
diagrom.v47          |     16384 | diagv47              | good    |                      | maincpu           |          0 | no  | be329fc0 | 24dc875753e729452f1ff941d2e0ae49f9031bc3
diagrom.v50          |     16384 | diagv50              | good    |                      | maincpu           |          0 | no  | 054a2d6a | 2fa6f3b31d7bb610df78be5c4c80537cf6e5911d
diagrom.v51          |     16384 | diagv51              | good    |                      | maincpu           |          0 | no  | 83034df6 | e57b2c8a8e3563ea02a20eecd1d4cb6be9f9c2df
groot.rom            |     16384 | groot                | good    |                      | maincpu           |          0 | no  | abf18c45 | 51165cde68e218512d3145467074bc7e786bf307
gw03.rom             |     16384 | gosh                 | good    |                      | maincpu           |          0 | no  | 5585d7c2 | a701c3d4b698f7d2be537dc6f79e06e4dbc95929
hdt-iso.rom          |     16384 | hdt                  | good    |                      | maincpu           |          0 | no  | b81c570c | 2a9745ba3b369a84c4913c98ede66ec87cb8aec1
imc.rom              |     16384 | imc                  | good    |                      | maincpu           |          0 | no  | d1be99ee | dee814271c4d51de257d88128acdb324fb1d1d0d
iso8bm.rom           |     16384 | iso8                 | good    |                      | maincpu           |          0 | no  | 43e9c2fd | 5752e6f789769475711b91e0a75911fa5232c767
isomoje.rom          |     16384 | iso22                | good    |                      | maincpu           |          0 | no  | 62ab3640 | 04adbdb1380d6ccd4ab26ddd61b9ccbba462a60f
jgh.rom              |     16384 | jgh                  | good    |                      | maincpu           |          0 | no  | 7224138e | d7f02ed66455f1c08ac0c864c7038a92a88ba94a
plus4.rom            |     16384 | plus4                | good    |                      | maincpu           |          0 | no  | 7e0f47cb | c103e89ef58e6ade0c01cea0247b332623bd9a30
psycho.rom           |     16384 | psycho               | good    |                      | maincpu           |          0 | no  | cd60b589 | 0853e25857d51dd41b20a6dbc8e80f028c5befaa
sc01.rom             |     16384 | sc                   | good    |                      | maincpu           |          0 | no  | 73b4057a | c58ff44a28db47400f09ed362ca0527591218136
spectrum.rom         |     16384 | en                   | good    |                      | maincpu           |          0 | no  | ddee531f | 5ea7c2b824672e914525d1d5c419d71b84a426a2
testromv037.bin      |     16384 | alford37             | good    |                      | maincpu           |          0 | no  | a7ea3d1c | f699b73abfb1ab53c063ac02ac6283705864c734
turbo2_3.rom         |     16384 | turbo23              | good    |                      | maincpu           |          0 | no  | fd3b0413 | 84ea64af06adaf05e68abe1d69454b4fc6888505
turbo4_4.rom         |     16384 | turbo44              | good    |                      | maincpu           |          0 | no  | 338b6e87 | 21ad93ffe41a4458704c866cca2754f066f6a560
Edited by PJ for layout.
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

[mention]Pegaz[/mention], I'm guessing the larger zip file includes the diagnostic ROMs. I can't find the zip file though. The one we both have seems fine though.
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

[mention]Pegaz[/mention], have a look from line 843 here which show the full list of supported ROMs (Which match your earlier list)

https://github.com/mamedev/mame/blob/ma ... ectrum.cpp
User avatar
Pegaz
Dynamite Dan
Posts: 1210
Joined: Mon Nov 13, 2017 1:44 pm

Re: Spectrum MAME for Complete Beginners

Post by Pegaz »

Currently, I can only run the 48k model from MAMEUI64.
For other Spectrum models, it reports that I am missing certain files.
Unfortunately, I was not able to start MESSUI64 to work with Spectrum emulation, I will still have to deal with this later...
Also find more nice artworks, here:
https://mrdo.mameworld.info/mame_artwork_ingame.php
User avatar
PeterJ
Site Admin
Posts: 6881
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Spectrum MAME for Complete Beginners

Post by PeterJ »

Pegaz wrote: Thu Jan 21, 2021 8:19 pm Currently, I can only run the 48k model from MAMEUI64.
For other Spectrum models, it reports that I am missing certain files.
Unfortunately, I was not able to start MESSUI64 to work with Spectrum emulation, I will still have to deal with this later...
Also find more nice artworks, here:
https://mrdo.mameworld.info/mame_artwork_ingame.php
[mention]Pegaz[/mention], please see above. You need spec128.zip
User avatar
Pegaz
Dynamite Dan
Posts: 1210
Joined: Mon Nov 13, 2017 1:44 pm

Re: Spectrum MAME for Complete Beginners

Post by Pegaz »

I missed that, I will get it later, thanks.
btw, I managed to run Spectrum emulation from MESSUI64 too, but MAMEUI64 still gives better aspect ratio...
Post Reply