Jump to content
IGNORED

Mess really SUCKS


Romko343

Recommended Posts

My "issue" has to do with how a rom is launched from the command line and where the bios and rom have to be located. Before I give out any more fodder I shall try a few more ways of doing things.

 

- Create a directory for MESS

- Create a subdirectory "roms" in the MESS directory

- Into that path, put the ROMs of the systems you are interested in

- Create a mess.ini by running MESS with -createconfig; modify settings in that file to your preferences

- Run MESS.

 

Linux users actually do not require any frontend, since it is much more comfortable to write a small script file to launch the emulation. For instance, this is my ti99 start script:

 

#!/bin/bash
./mess64 ti99_4ae -keymap -keymap_file keymaps/km_de_LINUX.map -peb:slot3 speech -peb:slot8 hfdc $*

or for the Geneve:

#!/bin/bash
./mess64 geneve -skip_gameinfo -keymap -keymap_file keymaps/km_de_LINUX.map -peb:slot2 horizon \
-peb:slot6 tirs232 -peb:slot8 hfdc -hard1 /home/michael/mess/disks/hd/scsi2.hd $*

Exit the emulation by changing into "Keyboard partial mode" using ScrollLock, then ESC. Also, in partial mode you can open a On-Screen menu with settings.

 

 

But anyhow M.E.S.S. is a genuine mess, everybody knows that.

 

I usually ignore sentences that start or end with "everybody knows that".

Edited by mizapf
  • Like 2
Link to comment
Share on other sites

 

- Create a directory for MESS

- Create a subdirectory "roms" in the MESS directory

- Into that path, put the ROMs of the systems you are interested in

- Create a mess.ini by running MESS with -createconfig; modify settings in that file to your preferences

- Run MESS.

 

Linux users actually do not require any frontend, since it is much more comfortable to write a small script file to launch the emulation. For instance, this is my ti99 start script:

 

#!/bin/bash
./mess64 ti99_4ae -keymap -keymap_file keymaps/km_de_LINUX.map -peb:slot3 speech -peb:slot8 hfdc $*

or for the Geneve:

#!/bin/bash
./mess64 geneve -skip_gameinfo -keymap -keymap_file keymaps/km_de_LINUX.map -peb:slot2 horizon \
-peb:slot6 tirs232 -peb:slot8 hfdc -hard1 /home/michael/mess/disks/hd/scsi2.hd $*

Exit the emulation by changing into "Keyboard partial mode" using ScrollLock, then ESC. Also, in partial mode you can open a On-Screen menu with settings.

 

 

 

I usually ignore sentences that start or end with "everybody knows that".

 

 

An example batch file for Windows to start (and end) Geneve emulation:

G:
CD \mess
mess geneve -peb:slot8 hfdc -hard1 G:\mess\disks\MdosGpl.hd -peb:slot6 speech -peb:slot3 tirs232 -mouse
C:\WINDOWS\SYSTEM32\TASKKILL.EXE /F /IM mess.EXE

An example batch file for Windows to start (and end) TI99/4A emulation:

G:
CD \MESS
MESS.exe TI99_4ev -peb:slot8 hfdc -peb:slot6 speech -peb:slot4 32kmem -peb:slot3 hsgpl -peb:slot2 evpc -hard1 G:\mess\disks\TI-Zip-Drive.hd -hard2 G:\mess\disks\harddrive.hd 
C:\WINDOWS\SYSTEM32\TASKKILL.EXE /F /IM MESS.EXE

An example batch file for Windows to start (and end) SGCPU emulation:

G:
CD \MESS
MESS.exe TI99_4P -peb:slot8 hfdc -peb:slot5 horizon -peb:slot4 speech -peb:slot3 hsgpl -peb:slot2 evpc -hard1 G:\mess\disks\TI-Zip-Drive.hd -hard2 G:\mess\disks\harddrive.hd
C:\WINDOWS\SYSTEM32\TASKKILL.EXE /F /IM MESS.EXE

I'm not going to ignore the statement, "But anyhow M.E.S.S. is a genuine mess, everybody knows that."

Apparently it was made without much thought since logically it is a false statement, and easily proven:

* I do not know that M.E.S.S. is a genuine mess because it has the opposite meaning to me, it is well organized and runs quite outstandingly.

and

* I am a member of the set 'everybody'.

therefore

* "But anyhow M.E.S.S. is a genuine mess, everybody knows that." is a false statement.


Gazoo

Edited by Gazoo
  • Like 2
Link to comment
Share on other sites

Ohhhh, I didn't realize I had to create a batch file to close the MESS emulation. It's all clear to me now. And thank you for the sample code. I shudder to think what might have happened if I accidentally -peb'ed to slot12 when I should have -peb'ed to slot8 instead. :-o

Link to comment
Share on other sites

Ohhhh, I didn't realize I had to create a batch file to close the MESS emulation. It's all clear to me now. And thank you for the sample code. I shudder to think what might have happened if I accidentally -peb'ed to slot12 when I should have -peb'ed to slot8 instead. :-o

 

You only need to close it in the batch file if you don't want to go back to the MESS menu before exiting MESS. It's my preference to avoid the extra step, but you don't have to.

 

You can't -peb to slot 12 because there are only 8 slots in a PEB, a person with any TI knowledge at all would know that. Are you really interested in actually learning something, or just here to be a troll?

 

 

Gazoo

  • Like 1
Link to comment
Share on other sites

- Create a directory for MESS

- Create a subdirectory "roms" in the MESS directory

- Into that path, put the ROMs of the systems you are interested in

 

In fairness, it's not that simple on OS X; the "roms" directory and/or the MESS directory itself have to be in a specific place (~/Applications as I recall), or the whole thing will fail with a completely unhelpful error message. Or at least, that was my experience when I ventured into RCA Studio II emulation recently; my memory is that the docs implied a flexibility that wasn't there at all -- it had to be in just the right place, or nothing worked.

Link to comment
Share on other sites

Maybe this could be solved with the mess.ini. You have some path properties right at the start of the file. Start mess with the option "-createconfig".

 

You could try and tell me the error message, and I give you the solution. :-)

 

I'd have to reconstruct the original circumstances, which I can do partially by means of the Terminal history file, but not completely. If memory serves, I had the MESS files/folder in my ~/Downloads folder, including the roms/studio2 folder with the necessary files in it, and I'm guessing I got the typical "ERROR: required files are missing, the system cannot be run." message. When I moved the exact same folder structure to ~/Applications, it worked.

 

(I also had to cd /Applications/mess0149-32bit/mess as well, i.e. I couldn't successfully run it via absolute path in the Terminal without changing to the app's directory first. That's normal in my experience, but doing the same thing for /Downloads/mess0149-32bit/mess didn't work.)

 

I think there was some other wrinkle too, but I can't recall what it was. I assume part of the issue is related to environment variables, which I'll freely admit I've never understood (but somehow have managed to scrape by, even so), and I'm sure properly editing mess.ini would indeed solve some of this.

Link to comment
Share on other sites

Ohhhh, I didn't realize I had to create a batch file to close the MESS emulation. It's all clear to me now. And thank you for the sample code. I shudder to think what might have happened if I accidentally -peb'ed to slot12 when I should have -peb'ed to slot8 instead. :-o

 

need some cheese to go with your whine?

 

it's too hard for you, but that's no reason 2 act like a dick.

  • Like 1
Link to comment
Share on other sites

 

need some cheese to go with your whine?

 

it's too hard for you, but that's no reason 2 act like a dick.

 

Yeah, I am not certain if he was being facetious or not, but the post reeks of sarcasm. In any case, there are much better novice emulators out there for the TI. Taken by themselves, MESS and MAME are not for novices, though a lot is and has changed. I know MAME has a number of very useful front-ends which makes using MAME a breeze. It reminds me of the UAE Amiga emulator back in the day: all command line, no GUI, and you could really screw things up. Now it has a really awesome front-end, including the "Amiga Forever" kit.

 

PC99 or Classic99 are probably best for TI novices to start with while they learn more of the technicals of the system. Then you know more about the number of slots in a PEB, CRU addresses, ROM/GROM addressing, etc.

 

When I saw the first coherent complaint about MESS, I immediately thought of *nix and the various desktops. Also a quote I saw a long time ago (paraphrase):

 

 

 

Unix is user-friendly; it's just very particular about who it's friends are.
Link to comment
Share on other sites

 

I'd have to reconstruct the original circumstances, which I can do partially by means of the Terminal history file, but not completely. If memory serves, I had the MESS files/folder in my ~/Downloads folder, including the roms/studio2 folder with the necessary files in it, and I'm guessing I got the typical "ERROR: required files are missing, the system cannot be run." message. When I moved the exact same folder structure to ~/Applications, it worked.

 

Not sure how you actually did it, but just to make sure, the ROM zips should not be unpacked. Simply put them in the roms subdirectory. I do not know much about MacOS/OSX, including its search paths. A safe bet could be to create a ~/mess directory, put the executable into it, a ~/mess/roms directory, where you put the ROM zips. I always recommend to create a mess.ini file because you can set some paths and flags in it, for example, for windowed or full screen mode etc.

 

The error message "required files are missing" is typical for the situation where MESS is unable to find one or all of the ROM files.

Link to comment
Share on other sites

 

The error message "required files are missing" is typical for the situation where MESS is unable to find one or all of the ROM files.

 

To be fair, this is the kind of error message I phuqn hate, detest, loathe, and despise. It is the kind of bull-hockey Microsoft drops on us. Sure, a required file is missing, but which one? Much like the nonsense I go through trying to compile some stuff on my Solaris boxes (like the latest Sendmail release.)

 

Could it not be possible to have something like foreach $file in @filelist; if not open($file) then print "Unable to open $file"?

Link to comment
Share on other sites

^Er, actually it does. Here's the message I got in full (keeping in mind this was an attempt at starting up RCA Studio II emulation):

 

84932.ic11 NOT FOUND (tried in studio2 studio2)
84933.ic12 NOT FOUND (tried in studio2 studio2)
85456.ic13 NOT FOUND (tried in studio2 studio2)
85457.ic14 NOT FOUND (tried in studio2 studio2)
ERROR: required files are missing, the system cannot be run.
However, the correct ROM files were in that "studio2" directory, relative to the location of the MESS binary -- which is what makes the message rather unhelpful, and made me think that my files might be bad (and no, I didn't unzip them). I'd normally expect relative pathing to find the file, but I guess you have to tell the Terminal to navigate to the containing folder, i.e. "cd ~/Applications/mess0149-32bit". In other words, you can tell Terminal to run the executable at ~/Applications/mess0149-32bit/mess as an absolute path, but it'll only work if Terminal's there too.
BTW I may have been wrong about ~/Downloads/mess0149-32bit not working; I'm testing it now and it seems to be operational, as long as I navigate to the folder in Terminal.
So the key issue is that OS X expects you to navigate to the containing folder in Terminal, or else MESS can't find the "roms" folder. I don't know if anything could be done in MESS to pre-empt that; truthfully I don't know why relative pathing wouldn't work, if MESS or OS X is to blame, and/or whether that's just the way UNIX always works. But if there's any way MESS could give a more precise error message, it could only help.
Link to comment
Share on other sites

BTW I remember when MESS used to have a really bizarre bug in the TI-99 emulation, at least in the Mac version: whenever I'd open a ROM (e.g. Parsec), it'd work the first time, then it'd stop working on every subsequent open! This was years and years ago, but I've never seen anything else like it.

Link to comment
Share on other sites

Do not create a separate studio2 folder. The ROM zip file must be in the roms folder, not in roms/studio2/. AFAIK, you can either unzip the contents into the studio2 folder, or you keep the zip file as is, but in the roms folder. So in my roms folder, I have all the zip files of all systems that I ever tried in MESS.

Also, the default for the rompath is "roms", which is relative to your current position. If you want an absolute path you'll need a mess.ini file with rompath set to that path. But then, the mess.ini must be in the current directory.

For example: Suppose that the full path of my mess64 executable is /home/michael/mess/mess64. So when I go into that directory, I can start it with ./mess64. Also, in /home/michael/mess/ there is a mess.ini file, and when starting in that directory, mess64 finds that file, and also gets the paths for the roms from there. Now if I decide to launch mess64 from my home directory, I would have to type mess/mess64. In that case, there must be a file /home/michael/mess.ini because I started from there. In this case, mess64 will not find the /home/michael/mess/mess.ini file, since it was not launched in that directory.

This is plain Unix-ish behavior, so maybe this is the issue you encountered.

As for your Parsec experience, please have a quick look at http://www.ninerpedia.org/index.php/MESS_version_history

- just to see that "years ago", we had a pretty different MESS than today. :-)

Edited by mizapf
Link to comment
Share on other sites

Do not create a separate studio2 folder. The ROM zip file must be in the roms folder, not in roms/studio2/. AFAIK, you can either unzip the contents into the studio2 folder, or you keep the zip file as is, but in the roms folder. So in my roms folder, I have all the zip files of all systems that I ever tried in MESS.

Er, then why does this work? I haven't set anything special up in my mess.ini file to make it function. (Yes, there's also an unzipped copy in the roms/studio2 folder.)

 

EDIT: Never mind, I reread your post and now I understand. What's the reasoning behind that, out of curiosity? It seems kind of arbitary: if it's zipped it doesn't go in the folder, if it's unzipped it does.

 

post-6067-0-63388000-1393815695_thumb.png

 

Also, the default for the rompath is "roms", which is relative to your current position. If you want an absolute path you'll need a mess.ini file with rompath set to that path. But then, the mess.ini must be in the current directory.

Ah, OK. I would have assumed that, if the location hadn't been specified or there was no mess.ini, it would be relative to the location of the binary I'm running, rather than the current directory location of the open command prompt. I'm guessing this is Unix behavior -- I've seen it before -- and, to be honest, it's never made sense to me. :)

 

As for your Parsec experience, please have a quick look at http://www.ninerpedia.org/index.php/MESS_version_history

 

- just to see that "years ago", we had a pretty different MESS than today. :-)

Believe it or not, I think this may have predated even the versioning listed on that page! I'm thinking ca. 2003-2004, unless that's impossible.

Link to comment
Share on other sites

Er, then why does this work? I haven't set anything special up in my mess.ini file to make it function. (Yes, there's also an unzipped copy in the roms/studio2 folder.)

 

EDIT: Never mind, I reread your post and now I understand. What's the reasoning behind that, out of curiosity? It seems kind of arbitary: if it's zipped it doesn't go in the folder, if it's unzipped it does.

 

Makes sense when you look at it this way: A zip file is a container for files, just like a directory. The MESS file loader searches for files in a container with the name of the system, and it treats zips the same way as directories. The modern operating systems and their respective file explorers just do the same.

 

 

Ah, OK. I would have assumed that, if the location hadn't been specified or there was no mess.ini, it would be relative to the location of the binary I'm running, rather than the current directory location of the open command prompt. I'm guessing this is Unix behavior -- I've seen it before -- and, to be honest, it's never made sense to me. :)

The "working directory" is the same concept as back in old DOS days, actually (or, to be precise, DOS took the idea from the older Unixes). It makes less sense (in my view) to have access relatve to the location of the executable file. Think of using system programs, like editors, or the file system commands like ls (dir).

 

For this reason, when you create a desktop icon for an application in Linux, Windows, and supposedly also MacOS/OSX, you can specify the working directory. In the case of MESS, if I set up a directory /home/michael/mess as the base from where roms, mess.ini, and other files shall be found, I would set /home/michael/mess as the working directory. The executable file may be located elsewhere, and you can provide an absolute path to it.

Link to comment
Share on other sites

MESS is very arcane to configure. The secret, as you found, is to create batch files for your most commonly used configurations, utilising command line parameters (%1 %2 etc) in the batch files for things like the floppy disk images and the cart images. Then it's a peice of cake.

 

The TI-99/4A emulation within MESS itself (the part that Michael Zapf is responsible for) is by far the most accurate emulation of the TI that we have. It's an incredible piece of work.

  • Like 1
Link to comment
Share on other sites

MESS seems to aim for quantity, not quality of emulation. If it wasn't meant for "users", what is it meant for? To say it's to document computing & console gaming history for...robots? The Tron MCP?

 

It goes without saying that specialized emulators for computers & game consoles work much better than MESS tries to accomplish, where "just works" principle applies. With MESS, it tries to homogenize everything, where problems arise. I remember the multi-step process to try switching disks or modules for the TI.

 

If you have a file nested too deep in subfolders, you can get an infinite loop of error dialogs.

  • Like 1
Link to comment
Share on other sites

One nonconstructive comment and you guys make it the thread of the year !? :skull:

 

I think it's extremely cool of mizapf and others to help out and explain just what to do: this business of batch files and the like. I too tried M.E.S.S. a while ago and quickly dismissed it as being a hot mess. Thanks to this thread, I *may* give it another go someday. :)

  • Like 1
Link to comment
Share on other sites

 

I think it's extremely cool of mizapf and others to help out and explain just what to do: this business of batch files and the like. I too tried M.E.S.S. a while ago and quickly dismissed it as being a hot mess. Thanks to this thread, I *may* give it another go someday. :)

 

I guess that I've been fortunate then. Currently using MESS on a Windows 7 PC with QMC2 as the front end and have found the learning curve to be somewhat flat. No, it's not completely plug and play, but I haven't had to do a lot of reading either.

 

Ernie

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...