Previous Thread
Next Thread
Print Thread
Page 2 of 3 1 2 3
Joined: May 2004
Posts: 1,772
Likes: 34
H
Very Senior Member
Very Senior Member
H Offline
Joined: May 2004
Posts: 1,772
Likes: 34
Quote
Given that, what is it that makes direct (V)RAM copying/pasting such an un-welcome feature?

because it's an ugly hack...

it belongs as part of something like the cheat system at best..

Joined: Jul 2009
Posts: 78
Member
Member
Joined: Jul 2009
Posts: 78
Originally Posted by Anna Wu
Quote
It seems that my suggestion didn't rise much interest, at least here in the forums.

I am interested, especially for exotic computers with rare or nonexistent software.
The only way is then to type for your self a language listing to run.

Yes, that feature has helped me a lot to adapt BASIC programs made for other computers. In a text editor I can easily change all the CLS into HOME, for example, and make quick running tests as the adaption work goes on.

Joined: May 2004
Posts: 1,772
Likes: 34
H
Very Senior Member
Very Senior Member
H Offline
Joined: May 2004
Posts: 1,772
Likes: 34
Originally Posted by Haze
Quote
Given that, what is it that makes direct (V)RAM copying/pasting such an un-welcome feature?

because it's an ugly hack...

it belongs as part of something like the cheat system at best..

(which btw isn't as far-fetched as it seems, the cheat system afaik is scriptable, and can access ram / rom etc. Give it access to the host clipboard, improve the scripting capabilities, and you might even be able to have copy / paste 'cheats' without having to pollute the driver at all)


Joined: Jul 2009
Posts: 78
Member
Member
Joined: Jul 2009
Posts: 78
Originally Posted by Haze
Originally Posted by Ensjo
Given that, what is it that makes direct (V)RAM copying/pasting such an un-welcome feature?
because it's an ugly hack...
This just re-stated what I was asking clarification for. frown

Originally Posted by Haze
it belongs as part of something like the cheat system at best..
Hm... Am I correct to think that the main objection relates to the possibility to inject ad hoc RAM chunks?

What if the copy/paste feature were restricted only to BASIC programs and VRAM text content? Would this render the suggestion acceptable?

Joined: Mar 2001
Posts: 17,239
Likes: 263
R
Very Senior Member
Very Senior Member
R Offline
Joined: Mar 2001
Posts: 17,239
Likes: 263
The main objection relates to the fact that MESS emulates the behavior of the real hardware, and the real hardware does not behave in this manner. (Indeed, it's likely not possible on the real hardware to do it even with added hardware).

Also, any such hacks will be by nature very fragile and will break each time we update the emulation core in the future.

Joined: Jul 2009
Posts: 78
Member
Member
Joined: Jul 2009
Posts: 78
Originally Posted by R. Belmont
The main objection relates to the fact that MESS emulates the behavior of the real hardware, and the real hardware does not behave in this manner. (Indeed, it's likely not possible on the real hardware to do it even with added hardware).
I understand that, and being a cultist of one specific vintage machine I agree that the machines should be emulated as accurately as possible.

Anyway, MESS already offers a bunch of capabilities ulterior to the original behavior of most of the emulated machines: state (snapshot) saving and loading; generation of .WAV file for cassette output (instead of just the sound); pausing; usage of keyboard as joystick; the very ability to paste text into the emulator as fast typing; selecting or disabling color artifacting effect; changing of RAM bytes (via the debugger); and so on.

What I am proposing (at least the part of it that relates to BASIC programs) is nothing so alien to the machines' behavior. It's just a more (much more!) convenient way to inserting and retrieving a program into/from the machine.

I have analyzed the cassette output of MC-1000 and created tools for the PC to generate a .WAV file from a text file containing an BASIC program and vice-versa. But the process of saving the text file, switching to the Command Prompt, run the converter, switching to MESS, type "LOAD" <enter>, mount the .WAV file,
play it and wait for the program to load... although much faster than typing it directly into the machine, is still very time consuming for my busy days. frown

Originally Posted by R. Belmont
Also, any such hacks will be by nature very fragile and will break each time we update the emulation core in the future.
How so? As I imagine it, for pasting, the MESS core would interact with the operating system and get the contents of the clipboard, and only pass a string to the driver; the driver (who owns the know-how) then tokenizes the program and puts it in the right place of RAM. For copying, the driver would produce a string with the source code of the program and pass it to the MESS core, that would simply pass it to the operating system's clipboard.

Since the core is just a "pipe" in the copy/paste process (as envisaged above), and this "pipe" function is independent of the rest of the emulation, I don't see how a change in other core functions would affect this feature.

Last edited by Ensjo; 11/14/10 03:34 AM.
Joined: Mar 2001
Posts: 17,239
Likes: 263
R
Very Senior Member
Very Senior Member
R Offline
Joined: Mar 2001
Posts: 17,239
Likes: 263
I'm sorry, but no. This transcends all of the listed capabilities in that it is a gross disgusting kludge that requires intimate knowledge of the operating system on the emulated computer. It's simply ugly, and as I said it will be fragile by nature and will shatter each time the core changes.

Use the fast-forward key (insert on Windows, page down on Linux/Mac) to make tapes load much quicker.

Joined: May 2004
Posts: 1,772
Likes: 34
H
Very Senior Member
Very Senior Member
H Offline
Joined: May 2004
Posts: 1,772
Likes: 34
and as I've said, given some improvements to the cheat / debug engine I'm pretty sure half of this could be implemented in external scripts. I believe this to be the better long-term solution, and will allow the drivers to remain clean and the actual MESS core to concentrate on the actual emulation of the system.

For copy, parameters could be read out of ram, acted upon, data could be read out ram, processed, and placed on the clipboard.

The reverse could be done for paste.

If scripted, rather than hacked into the drivers, I imagine it will be a lot less fragile too.

The feature could work if implemented *properly*, but being hacked into drivers / core is not a proper solution. Direct RAM access is still ugly, but, it's a feature which exists for cheats etc. and if it's external to the actual driver source code it's far less ugly. Nobody is saying it isn't a useful feature, but the existing methods to support it are gross.

Joined: Mar 2001
Posts: 17,239
Likes: 263
R
Very Senior Member
Very Senior Member
R Offline
Joined: Mar 2001
Posts: 17,239
Likes: 263
Right. I'm fine with doing it in external scripts, I just don't want to see one line of driver code facilitating it.

Maybe if someone can get ShimaPong to submit his purportedly massively improved cheat system?

Joined: May 2004
Posts: 1,772
Likes: 34
H
Very Senior Member
Very Senior Member
H Offline
Joined: May 2004
Posts: 1,772
Likes: 34
Originally Posted by R. Belmont
Right. I'm fine with doing it in external scripts, I just don't want to see one line of driver code facilitating it.

Maybe if someone can get ShimaPong to submit his purportedly massively improved cheat system?

ShimaPong won't ever submit it, he just has the typical 'my dick is bigger than yours' emulation attitude which seems common with Japanese devs and PCB owners. In this case he's trying to show how useless Pugsy is, by being equally useless himself.

You're about as likely to see Xacro give the Neo Protos to MAME ;-)

Page 2 of 3 1 2 3

Link Copied to Clipboard
Who's Online Now
3 members (Dorando, Carbon, nerd4gw), 111 guests, and 1 robot.
Key: Admin, Global Mod, Mod
ShoutChat
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics9,331
Posts122,199
Members5,077
Most Online1,283
Dec 21st, 2022
Our Sponsor
These forums are sponsored by Superior Solitaire, an ad-free card game collection for macOS and iOS. Download it today!

Superior Solitaire
Powered by UBB.threads™ PHP Forum Software 8.0.0