NestorMSX, a MSX emulator as simple as it can be

NestorMSX, a MSX emulator as simple as it can be

por konamiman em 13-01-2015, 21:58
Tópico: Emulation
Idiomas:

There's a new member in the MSX emulators family: NestorMSX. Developed by (you guessed it) Konamiman, it is an extremely simple and barebones emulator.

NestorMSX emulates a MSX1 with 64K RAM, but in text mode only (SCREEN 0 and SCREEN 1 without sprites) and without support for sound, cassette interface, joystick or printer ports, or any other kind of hardware. Clearly, with all these limitations it is not intended to be a general purpose emulator; it is rather a demonstration of how to use the Z80.NET library to create computer emulators.

Nevertheless, it has a couple of unique features not seen before in other emulators (see comments): direct access to the host filesystem (so you can do SAVE "c:\users\myself\My Documents\My wonderful program.bas" from the BASIC interpreter, for example), and Copy/Paste support (so you can get a text hardcopy of the screen, and paste text in the emulated MSX keyboard buffer). So it can be marginally useful to play around with MSX-BASIC (in MSX1 and in text mode only, remember!)

If you want to try it out, all you need is a machine with the .NET Framework 4 installed. If you just want to take a look at the source code, you can download the Mercurial repository from BitBucket or just browse the project site.

Relevant link: NestorMSX download
Relevant link: NestorMSX README file

Comentários (18)

Por mars2000you

Enlighted (6229)

imagem de mars2000you

13-01-2015, 23:08

Amazing! Tip: if you have problems to type some characters, use a MSX1 rom that is very close to your PC keyboard. For example, if you have a French AZERTY keyboard, best option is the MSXFR.rom that you can find in the Machines/Shared Roms subdirectory of blueMSX.

Por Vampier

Prophet (2397)

imagem de Vampier

14-01-2015, 21:00

nice

Por slowerisbetter

Master (194)

imagem de slowerisbetter

14-01-2015, 22:15

Do you accept pull requests for this? I always wonder why people are makings things Windows only in 2015, especially when writing in C#. This seems to work fine on Linux / Mac OS X Mono if you would use cross platform paths, so in it's current form it does not work and uses hardcoded \ paths instead of cross platform .NET path references which will figure out the platform ( which is \ for Windows and / for all other platforms).

Por Grauw

Ascended (10583)

imagem de Grauw

14-01-2015, 23:17

Very very cool.

Por konamiman

Paragon (1172)

imagem de konamiman

15-01-2015, 10:03

@slowerisbetter Hardcoded paths? Where?? The only one is in Program.cs (the BasePathInDevelopmentEnvironment constant), and it's just a nasty hack to beautify unexpected exception dumps (this path is never actually accessed and of course there's no problem if it does not exist). All other filenames and paths are in the configuration file... unless I missed something!

Accepting pull requests? Why not if you have an useful contribution to do Smile

Por slowerisbetter

Master (194)

imagem de slowerisbetter

15-01-2015, 10:08

Por konamiman

Paragon (1172)

imagem de konamiman

15-01-2015, 10:16

@slowerisbetter Of course. That's why in the Readme file I say that you must review the configuration file and tweak it as appropriate. Smile

But it's my fault. I did not include the readme file as part of the download. It's in the project site: https://bitbucket.org/konamiman/nestormsx/src/default/README.md

Por konamiman

Paragon (1172)

imagem de konamiman

15-01-2015, 10:35

@slowerisbetter You are right. Had I used normal slashes instead of backslashes in the configuration file, it would have still worked in Windows, but also in Linux / Mono (theoretically at least) out of the box.

But it's never too late. I have just updated the source and the downloadable binaries. Thanks for the hint! Smile

Por gdx

Enlighted (5512)

imagem de gdx

15-01-2015, 14:22

CocoaMSX supports also the pasting text directly into MSX but it doesn't work correctly. The host filesystem option also is already in file Menu but doesn't work at all.

Por sd_snatcher

Prophet (3505)

imagem de sd_snatcher

15-01-2015, 21:29

This copy/paste feature is an awesome idea! I wish openMSX had something like this too.

Por Manuel

Ascended (18794)

imagem de Manuel

15-01-2015, 22:19

Yeah, it was a very long wish to implement it from myself, but there was (at least at the time) no cross-platform way to access 'the clipboard buffer' as far as I could find back then. So the Catapult 'type' option was created and later the type_from_file command to compensate. Good enough for myself, I must say.

See https://sourceforge.net/p/openmsx/feature-requests/9/ :)

Por SLotman

Paragon (1240)

imagem de SLotman

15-01-2015, 23:05

"(...)direct access to the host filesystem(...)"
CJs MSX emulator had this, it's not unique to NestorMSX.

Por ~mk~

Champion (304)

imagem de ~mk~

16-01-2015, 22:13

IIRC Meisei also had a paste text feature.

Por konamiman

Paragon (1172)

imagem de konamiman

16-01-2015, 22:25

Ok, it seems that I thought I knew more about MSX emulators than I actually do. Smile

Por marcos.m.carvajal.1

Expert (83)

imagem de marcos.m.carvajal.1

20-01-2015, 00:30

Thank you konamiman for this emulator. By the way, I got very emotional when I saw in your blog the drawing of the Gradius game made by your son. Tongue

Por umaiboux

Resident (43)

imagem de umaiboux

23-01-2015, 15:42

"NestorMSX-1.0.zip" is not downloadable now?

Por konamiman

Paragon (1172)

imagem de konamiman

23-01-2015, 15:49

Indeed... no idea of what happened!! I just published the file again.

Por djh1697

Paragon (1636)

imagem de djh1697

26-01-2015, 23:40

Nice Wink