AdvMESS For Dummies - a basic guide
-
If you are only playing games on the BBC emulator, then is there any real reason to run a Master 128 ?
It didn't really offer anything over the standard 32k Model B, for the majority of games, aside from Elite Enhanced.For what the Beeb could really do, and it's a shame it took until the last few years to show this, then this is a fabulous collection of freeware games by Retro Software.
http://bbcmicro.co.uk/index.php?search=Retro+Software&on_P=on
Some are almost arcade-perfect.
-
@John_RM_70 Brilliant list. Thanks for that.
-
Thought this might be useful for those wanting other BBC variants, such as Model A, Model B, 64k, etc..
This is the BBC variant, followed by the mess system name.
BBC Master 128k - bbcbp128
BBC Model A - bbca
BBC Model B - bbcm
BBC Model B+ 128k - bbcbp
BBC Model B+ 64K - bbcbThese are the roms (exact names), followed by the crc, needed for advmess.
basic2.rom - crc:79434781
bpos2.rom - crc:9f356396
ch103.rom - crc:98367cf4
ddfs-1.53.rom - crc:e1be4ee4
ddfs223.rom - crc:7891f9b7
dfs09.rom - crc:3ce609cf
dfs144.rom - crc:9fb8d13f
dnfs.rom - crc:8ccd2157
mos+3.50.rom - crc:141027b9
os12.rom - crc:3c14fc70
zdfs-0.90.rom - crc:ea579d4d -
@John_RM_70 It's apparent to me and probably to others here that you have a deep and abiding interest in the BBC Micro. Could you let us know your thoughts please on each of these models? I'd rather like to have just one model installed, if possible, using advmess. I selected bbcbp128, but copy of Elite I have doesn't seem to work (yet I know I had it working at one stage - perhaps when I was using the 32K model). (I have to try out some of the other commands instead of CHAIN "LOAD" in the meantime).
Does the bbcbp128 have 100% compatibility with games made for the other models or do you think it's necessary to install more than one model to get proper coverage of games?
-
@spud11 said in AdvMESS For Dummies - a basic guide:
bbcbp128
It's 4am here, so I will give you a better answer later today - I stupidly did a source update on one of my Pi emulators, and now it's still going.
My honest opinion is that the Master 128k isn't needed for games since 99.9% of them are for the Model B, while a tiny few take advantage of the Master 128k.
On real hardware, I found the only way to make the Master 128 more compatible is to use a multi-os hardware switcher, to switch from os 1.2 upto os 3.50. with 1.2 being the most compatible - something to do with a missing character set in the later roms.
I have a Model B 32k with a Turbo MMC SDcard, and this is the most compatible out of all the Beebs.
I am going to switch to the BBC Model B, for the advmess emulator, since I am already finding many games not working with the bbcbp128. -
@spud11 said in AdvMESS For Dummies - a basic guide:
Does the bbcbp128 have 100% compatibility with games made for the other models
Definitely not. I defaulted to bbcbp128 and a small number of games wouldn't work until I went to bbcb. (Which I thought was the "standard" model, but it now seems that's bbcm, so I'm going to try that on a couple of troublesome ones.)
-
Hmm, it doesn't want to work with bbcm at all. Replaced every entry in EMULATORS.CFG and BBCMICRO.RC, but crashed every time.
-
I can boot from bbcm, but it's still trying to be a Master 128 because I get a
"This is not a language"
Which is a Master error, since the Model B will always look for a language from the highest rom downwards. This can be fixed on a Master with "*CONFIGURE LANG 12", but you need to then do a shift-break - and I don't know what the break key is.
More testing to do.
Edit:
bbcb - works. Boots to BBC Computer 32k, Acorn DFS.
But, nothing boots. Not a single game. *cat lists disk contents, but *!boot just takes me back to a command prompt with a few characters. Beginning to think this is a lost cause, and this Mess emulation is just too old. Need a more upto date Mess. -
@John_RM_70 Huh. Yet bbcb works perfectly for me, shows up as 32K and all games load fine with the CHAIN command. Weird business.
(Not as weird as the bug I just got trying to run Castle Quest, though. All the keys work fine, and appear to map to the joystick as normal, but you can't jump left. Jumping right, no problem. Left, no dice. All other games mapping the same keys to the same joystick, absolutely fine, jump in any direction you like. It's just this one.)
-
@SpudsMcToole Could you share your bbcb.zip ?
Mine conforms to the Mess required sizes and correct crc's, yet I can only get games to work with the bbcbp128.zip.
Even more weird, I can't get a single game to work from here -> http://www.bbcmicro.co.uk/index.php
I just get "Bad program", when I use *!BOOT - on all the games I have downloaded.
Yet, they all work on my real Master 128, and on Beebem on my PC.
I can't even save any configs from inside Mess, especially since I want a custom resolution and multiplier - which helps with the scaling on a CRT.This is the most bizarre, weird, and damn frustrating emulator I have ever used.
-
@John_RM_70 That's the exact same place I've been getting most of mine from, so it shouldn't be the files.
The forum won't let me attach bbcb.zip, not sure how to add it, but I'm pretty sure it's just the one from the BIOS site listed in the original post.
-
Do our configs differ ?
Here is minedefault = "advmess"
advmess = "/opt/retropie/emulators/advmame/bin/advmess bbcb -cfg /opt/retropie/configs/mame-advmame/bbcmicro.rc -floppy %ROM%"It can't be anything in bbcmicro.rc, there really isn't anything in there that would do this.
-
@John_RM_70 I've got:
default = "advmess" advmess = "/opt/retropie/emulators/advmame/bin/advmess bbcb -cfg /opt/retropie/configs/mame-advmame/bbcmicro.rc -floppy %ROM%"
Which seems to be identical. I don't think it can be bbcmicro.rc that's causing your problem, because if there's so much as a single character out of place there you'll just get dumped back to ES, you won't get to the BBC OS screen.
-
@SpudsMcToole @John_RM_70 I switched back to the
bbcb
BIOS and all 4 games I've so far got ready are working - Thrust, Planetoid, Elite and Chuckie Egg. (With Elite, I found that the command suggested by you, John,*!BOOT
worked instead ofCHAIN "LOAD"
).What I did notice from John's bios list was that some of the bioses would need to be renamed - for example,
dfs09.rom
appears asdfs090.rom
in the zip file of bioses I have. -
@spud11 This command - CHAIN "LOAD" - is for loading cassettes. Most of the games out there are .ssd (single sided disk) or .dsd(double sided disk) and to load them it's normally *!BOOT, or *LOADER, etc... On a real BBC, you can just press shift+break and disks boot, but I don't think this version of mess has a break key defined.
I had a look through bbc.c on github, and I think I got the bios names wrong. There it says this.
https://imageshack.com/a/img922/9927/5OcQYP.png
I have used a png pic because I can't get the formatting to work properly, and the text was all over the place.
Anyway, that list makes more sense, such as bbcm = BBC Master.
I don't think dfs09.rom or dfs090.rom, makes much difference. "dfs", is just Disk Filing System, and I think the most used is 1.44.
I think there should be a parent bios, bbca.zip, which would contain ALL the roms. Then each system would have it's unique rom, such as bbcb.zip, or bbcm.zip, only containing what it needs. Will try this, in a minute.@spud11 When you boot the Model B rom, do you see this ?
BBC Computer 32K
Acorn DFS
BASICOr do you see anything different ? I'm thinking my problem is the dfs.
-
@John_RM_70 That is exactly the boot text that I get.
-
@John_RM_70 I've also had a look at Advance Mame's documentation: https://www.advancemame.it/doc-script . You are right. There's no simulated key for
shift-break
:EVENT key_a, key_b, key_c, key_d, key_e, key_f, key_g, key_h, key_i, key_j, key_k, key_l, key_m, key_n, key_o, key_p, key_q, key_r, key_s, key_t, key_u, key_v, key_w, key_x, key_y, key_z, key_0, key_1, key_2, key_3, key_4, key_5, key_6, key_7, key_8, key_9, key_0_pad, key_1_pad, key_2_pad, key_3_pad, key_4_pad, key_5_pad, key_6_pad, key_7_pad, key_8_pad, key_9_pad, key_f1, key_f2, key_f3, key_f4, key_f5, key_f6, key_f7, key_f8, key_f9, key_f10, key_f11, key_f12, key_esc, key_backquote, key_minus, key_equals, key_backspace, key_tab, key_openbrace, key_closebrace, key_enter, key_semicolon, key_quote, key_backslash, key_less, key_comma, key_period, key_slash, key_space, key_insert, key_del, key_home, key_end, key_pgup, key_pgdn, key_left, key_right, key_up, key_down, key_slash_pad, key_asterisk_pad, key_minus_pad, key_plus_pad, key_period_pad, key_enter_pad, key_prtscr, key_pause, key_lshift, key_rshift, key_lcontrol, key_rcontrol, key_lalt, key_ralt, key_scrlock, key_numlock, key_capslock, key_lwin, key_rwin, key_menu.
This means the
script_play
command would need to type out the whole*1BOOT
for cassettes and theLOADER
command etc for others. -
Thanks spud.
I had another look on github, and also couldn't find a shift-break.This means the script_play command would need to type out the whole *1BOOT for cassettes
*!BOOT is for disks only. For cassettes, you need CHAIN "", or CHAIN"gamenamexxx". And, you might also need to manually "Play" the virtual cassette drive from the tab menu "Tape Control". I think it would depend on the Mess emulation. Does it emulate a cassette in real-time ? Or is it a sort of quick load ? I haven't tried cassettes, yet. If it's a quick load, then it should load cassettes automatically.
I still can't fathom this out, it's plain bonkers. If I boot to a Master 128, then games work. But then, I think the 128 used a different/newer dfs, or it's using a watford dfs. If I boot to a Model B, then nothing works, although I can *CAT disks, so something is working - just not *!BOOT. -
@John_RM_70 Damn. That's a bit problematic. There is therefore a huge number of variables - what roms/games we've downloaded, what format they are in (tape/disk), what bioses we've each got, what commands are needed to get things working and what model of BBC we're each using. I really hadn't realised just how many commands there appear to be to get games working.
It's definitely a quick load, no matter which command you use. 3 of the games I've got work with the CHAIN command so they must be tapes/cassettes. They load instantaneously. The version of Elite I have loads with the *!BOOT command so that must be a disk. It loads instantaneously as well.
-
I had a chat with a old mate I went to school with and he said something along these lines.
CHAIN "LOADER"
Will work for a disk image, normally a cassette converted to a disk image. CHAIN, loads the first program as a "basic" program. You can shorten CHAIN "" with CH."GAMEXX". If it's not a basic program, you will get a error message
"Bad program"
You can then try "*RUN GAMEXX"
I tried the CHAIN method and ran out of memory, so if anyone gets "No Room" error, then you simply type MODE 7.
I have been successful in running games directly, not using *!BOOT. So, CHAIN "CHUCKIE" - for chuckie egg. *!BOOT - for me, only runs on the Master 128 roms, it doesn't work in the Model B roms. Weird.Also, pressing the dot key "." will change videomode, so will have to see where that is.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.