Jump to content
IGNORED

MESS 0.153…The next generation of Atari 7800 emulation


Trebor

Recommended Posts

small update

 

1. I have had Tafoid to try the windows version of code from yesterday and -cart2 works as on my macbook. also the output of -lm is the same as mine. I really have no idea what is wrong at your end. maybe try to recompile a clean build of the tree (i.e. removing the obj/ folder).

 

2. concerning the impossibility to load files from the internal UI, that only happens if you start "mess.exe" with no arguments and then select A7800 and finally you try to load the carts. On the other hand, if you start "mess.exe a7800" and then you try to mount the cart from the internal UI, it will work flawlessy (Tafoid have just tried :) )

I will see if I can fix the problem that shows up when you launch "mess.exe" with no arguments, but in the end I suggest to add the a7800 at start :)

  • Like 3
Link to comment
Share on other sites

another update: the black screen when first launching A7800 from the internal menu and then loading carts from internal UI as well, has been solved in rev. 31799

kudos to Tafoid for pointing out that the problem was only present when mess was launched with no parameters (hard to fix bugs if I cannot reproduce them ;) )

  • Like 2
Link to comment
Share on other sites

Thanks for all the updates and follow-ups, etabeta! :)

 

Learned something new today, as I didn't realize a 'make clean' may still be necessary despite compiling in a new folder, I will grab the latest SVN, issue a 'make clean', then compile. I'll follow up with the results (And of course provide the binary).

Link to comment
Share on other sites

Truly dumbfounded at this point. Same results.

Here is my step-by-step process that I've been following:

 

-Download the latest SVN (using this link) - takes a minute or two for the download to kick in.

[Warning (to others) - it's fairly relatively large ~41-42 MB.]

 

-Extract source files to new folder.

 

-@Command Line (Setup as batch file):

set path=c:\mingw\mingw64-w32\bin
make clean
-@Command Line (Setup as batch file):
set path=c:\mingw\mingw64-w32\bin
make TARGET=mess
Wait for compile to complete.
After completing (place roms folder of course).
-@Command Line:
mess a7800 -cart xm -cart2 "C:\MESSWIP\software\a7800\ym_sound_test_v14.a78"
-Result:
"Error: unknown option: -cart2"
-@Command Line:
mess a7800 -cart xm -lm

-Result:

 SYSTEM      MEDIA NAME (brief)   IMAGE FILE EXTENSIONS SUPPORTED
----------  --------------------  ------------------------------------
a7800        cartridge   (cart)     .bin  .a78

:?

Link to comment
Share on other sites

I don't know what to say: just tried to rebuild from scratch latest version and it works as expected.

I'm puzzled to say the least...

 

can you open in a text editor the file hash/a7800.xml and copy here the entry corresponding to the game "xm" ? it is at the bottom of the file, close to "xboard"...

 

also, what is the output of "mess.exe nes -cart ggenie -lm" ?

Edited by etabeta
Link to comment
Share on other sites

can you open in a text editor the file hash/a7800.xml and copy here the entry corresponding to the game "xm" ? it is at the bottom of the file, close to "xboard"...

 

post-18-0-12461600-1409154207_thumb.png

 

<!-- Chip adding 128K of RAM + POKEY+HighScore onboard -->
<software name="xm">
<description>XM Expansion Module</description>
<year>2015?</year>
<publisher><homebrew></publisher>
<part name="cart" interface="a7800_cart">
<feature name="slot" value="a78_xm" />
<dataarea name="rom" size="4096">
<rom name="highscre.bin" size="4096" crc="9be408d3" sha1="a3af676991391a6dd716c79022d4947206b78164" offset="0" />
</dataarea>
</part>
</software>
<!-- XM board enhanced -->
<software name="dkongxm">
<description>Donkey Kong (PAL, Demo, XM enhanced)</description>
<year>2012</year>
<publisher><homebrew></publisher>
<info name="programmer" value="TEP392" />
<sharedfeat name="compatibility" value="PAL"/>
<part name="cart" interface="a7800_cart">
<feature name="pcb_type" value="TYPE-XM" />
<feature name="slot" value="a78_xmc" />
<dataarea name="rom" size="0x24000">
<rom name="dkxm_final_demo_pal.a78" size="0x24000" crc="d362712e" sha1="118c462d6698bd23c378785f80062fdd7d65ca00" offset="0" />
</dataarea>
</part>
</software>
<software name="dkongxmnu" cloneof="dkongxm" >
<description>Donkey Kong (NTSC, Demo, XM enhanced)</description>
<year>2012</year>
<publisher><homebrew></publisher>
<info name="programmer" value="TEP392" />
<sharedfeat name="compatibility" value="NTSC"/>
<part name="cart" interface="a7800_cart">
<feature name="pcb_type" value="TYPE-XM" />
<feature name="slot" value="a78_xmc" />
<dataarea name="rom" size="0x24000">
<rom name="dkxm_final_demo_ntsc.a78" size="0x24000" crc="6e170055" sha1="f4da231312da06ff9e8af5681b5013b14886b455" offset="0" />
</dataarea>
</part>
</software>
</softwarelist>

 

also, what is the output of "mess.exe nes -cart ggenie -lm" ?

 

Here is the above request, as well as a driver (a800) that is showing "cart1" and "cart2" (If it helps):

 

post-18-0-16658200-1409153928_thumb.png

C:\MESSWIP>mess nes -cart ggenie -lm
 SYSTEM      MEDIA NAME (brief)   IMAGE FILE EXTENSIONS SUPPORTED
----------  --------------------  ------------------------------------
nes          cartridge   (cart)     .nes  .unf  .unif

C:\MESSWIP>mess a800 -lm
 SYSTEM      MEDIA NAME (brief)   IMAGE FILE EXTENSIONS SUPPORTED
----------  --------------------  ------------------------------------
a800         floppydisk1 (flop1)    .atr  .dsk  .xfd
             floppydisk2 (flop2)    .atr  .dsk  .xfd
             floppydisk3 (flop3)    .atr  .dsk  .xfd
             floppydisk4 (flop4)    .atr  .dsk  .xfd
             cartridge1  (cart1)    .rom  .bin
             cartridge2  (cart2)    .rom  .bin

C:\MESSWIP>
Link to comment
Share on other sites

ok, so the reason is not an outdated softlist. the a800 output does not help, because the second slot is not device-dependent as the one of a passthrough cart is, but it is a slot always present :)

anyway, the output of nes points towards a core issue which manifests only on some setups (yours and emucr ones for sure, but not mine and Tafoid's)

just to be sure, can you also try the following commands? I just need to know if either gives you a cart2 switch or none.

 

 

mess.exe nes -cart nantbb -lm
mess.exe nes -cart karaoke -lm
mess.exe genesis -cart sk -lm

 

also, can you give me some more details of your OS? which Windows version? 32bit or 64bit?

Link to comment
Share on other sites

C:\MESSWIP>mess.exe nes -cart nantbb -lm
 SYSTEM      MEDIA NAME (brief)   IMAGE FILE EXTENSIONS SUPPORTED
----------  --------------------  ------------------------------------
nes          cartridge   (cart)     .nes  .unf  .unif

C:\MESSWIP>mess.exe nes -cart karaoke -lm
 SYSTEM      MEDIA NAME (brief)   IMAGE FILE EXTENSIONS SUPPORTED
----------  --------------------  ------------------------------------
nes          cartridge   (cart)     .nes  .unf  .unif

C:\MESSWIP>mess.exe genesis -cart sk -lm

-----------------------------------------------------
Exception at EIP=017D39F2 (not found): ACCESS VIOLATION
While attempting to read memory at 00000020
-----------------------------------------------------
EAX=00000001 EBX=0022FBE4 ECX=7FFDF000 EDX=00000020
ESI=00000000 EDI=0453E8C0 EBP=0022F278 ESP=0022F220
-----------------------------------------------------
Stack crawl:
  0022F278: 017D39F2 (not found)
  0022F2D8: 017D1B58 (not found)
  0022F348: 01F3599B (not found)
  0022F3D8: 015AA171 (not found)
  0022F438: 0162AF88 (not found)
  0022F4B8: 01D95277 (not found)
  0022F518: 01645FE4 (not found)
  0022F688: 01722660 (not found)
  0022F878: 017234F3 (not found)
  0022F948: 016E9B70 (not found)
  0022FE88: 00A90195 (not found)
  0022FE94: 019C1890 (not found)
  0022FEC8: 02666AB3 (not found)
  0022FF88: 0040140B (not found)
  0022FF94: 76791154 (BaseThreadInitThunk+0x0012)
  0022FFD4: 77BCB299 (RtlInitializeExceptionChain+0x0063)
  0022FFEC: 77BCB26C (RtlInitializeExceptionChain+0x0036)

C:\MESSWIP>

I receive the same results on two different machines:

 

1. Windows 7 Professional x86

2. Windows 7 Home Premium x64

Link to comment
Share on other sites


C:\MESSWIP>mess.exe iq151 -slot1 disc2 -lm
SYSTEM MEDIA NAME (brief) IMAGE FILE EXTENSIONS SUPPORTED
---------- -------------------- ------------------------------------
iq151 cassette (cass) .wav
cartridge1 (cart1) .bin .rom
floppydisk1 (flop1) .iqd .d77 .d88 .1dd .dfi .imd .ipf .m
fi .mfm .td0
floppydisk2 (flop2) .iqd .d77 .d88 .1dd .dfi .imd .ipf .m
fi .mfm .td0
cartridge2 (cart2) .bin .rom
cartridge3 (cart3) .bin .rom
cartridge4 (cart4) .bin .rom
cartridge5 (cart5) .bin .rom

C:\MESSWIP>

 

Link to comment
Share on other sites

interestingly, I have asked to Tafoid to try the build you posted at http://atariage.com/forums/topic/224055-mess-0153the-next-generation-of-atari-7800-emulation/?p=3060696

and he reports that on his machine the output is the following

 

 

C:\Users\ThenGames\Desktop\messnow>mess a7800 -cart hiscore -lm 
SYSTEM      MEDIA NAME (brief)   IMAGE FILE EXTENSIONS SUPPORTED 
----------  --------------------  ------------------------------------ 
a7800        cartridge1  (cart1)    .bin  .a78 
            cartridge2  (cart2)    .bin  .a78

 

can you try moving all your cfg/ini files to another directory (mame.ini as well)? maybe some old option is interfering...

Link to comment
Share on other sites

interestingly, I have asked to Tafoid to try the build you posted at http://atariage.com/forums/topic/224055-mess-0153the-next-generation-of-atari-7800-emulation/?p=3060696

and he reports that on his machine the output is the following

C:\Users\ThenGames\Desktop\messnow>mess a7800 -cart hiscore -lm 
SYSTEM      MEDIA NAME (brief)   IMAGE FILE EXTENSIONS SUPPORTED 
----------  --------------------  ------------------------------------ 
a7800        cartridge1  (cart1)    .bin  .a78 
            cartridge2  (cart2)    .bin  .a78

can you try moving all your cfg/ini files to another directory (mame.ini as well)? maybe some old option is interfering...

 

Already did - wiped the folder completely out. I started with no *.ini or *.cfg files (Or same-named folders for that matter).

 

What version of Windows is Tafoid using?

tep392 tried under his Win 7 Pro 64bit system, and had the same results as found with Win 7 Pro 32bit and Win 7 HP 64bit.

Link to comment
Share on other sites

I'm running out of options :(

you both have tried the same exe (the one from post 110), with the same softlist item xm, but you got different results... either you need an exorcist or we need a lot of luck to spot the actual problem :)

 

let me try some more tests with Tafoid

Link to comment
Share on other sites

you both have tried the same exe (the one from post 110), with the same softlist item xm, but you got different results... either you need an exorcist or we need a lot of luck to spot the actual problem :)

 

Don't forget tep392 (Win 7 Pro 64bit) experiences the same results as me (Win 7 Pro 32bit and Win 7 HP 64bit). Two exorcisms perhaps ;)

 

Is Tafoid running Windows 7?

Link to comment
Share on other sites

after several tests, we can *only* reproduce the problem when launching the system with the wrong hashpath

please check that you are running the exe from a folder where you also have the hash/ directory with an updated a7800.xml, or that you run the exe passing the correct -hashpath option to the location of the xml softlist files :)

 

short of that, you might want to call the ghostbusters or a good exorcist :)

 

 

also, as I already said previously, the passthru system can only work while loading xm from softlist, so make sure that you are loading files that way (loading the highscore.a78 file cannot work yet)

Edited by etabeta
Link to comment
Share on other sites

have the hash/ directory with an updated a7800.xml

$@%@$^%@$^%@$^@!!!

 

C:\MESSWIP>mess a7800 -cart xm -lm
 SYSTEM      MEDIA NAME (brief)   IMAGE FILE EXTENSIONS SUPPORTED
----------  --------------------  ------------------------------------
a7800        cartridge1  (cart1)    .bin  .a78
             cartridge2  (cart2)    .bin  .a78
...never brought over the updated hash folder - just the executable, hlsl and artwork folder.

 

@#@%$#%!!!... :x

 

Mea Culpa...

 

Some penance:

mess a7800 -cart xm -cart2 "C:\MESSWIP\software\a7800\ym_sound_test_v14.a78"

 

https://www.youtube.com/watch?v=YBq1_pkj6NA

  • Like 1
Link to comment
Share on other sites

it's nice that the solution was easy and it was not a bug in the emulator :)

now you can enjoy the new feature and also the fixed problems with the internal UI!

 

have fun

 

Sorry for the troubles, and thank you.

 

As promised: https://www.sendspace.com/file/qk82xa

 

Don't click on any download link on the page except the one that looks like this:

 

post-18-0-97711300-1409162519_thumb.png

 

Keeping the download offsite this time (20 MB - hash folder adds some considerable bulk) - removing the others - Al's bill is big enough.

 

With executable, hlsl folder, artwork folder, and UPDATED HASH folder provided. :-D

  • Like 1
Link to comment
Share on other sites

To demonstrate the high score saving working perfectly via xm module emulation, we started with issuing this command:

 

mess a7800 -cart xm -cart2 "C:\zips\emu\a7800\roms\Xevious (1987) (Atari).zip"

(You can of course substitute the above path to wherever your game ROMs are stored).

 

https://www.youtube.com/watch?v=FYTmosXCUWw

 

In the above video...

Pick up at "GAME OVER". Initialize the high score (cart) saving, since its the first time it is being utilized.

Enter initials, notice name saving registered, and completely exit MESS.

Relaunch MESS (same command as above), notice saved information.

Played a quick round, enter new initial information. Notice it is saved.

Exit MESS again, re-launch MESS for a third time, both name entries have been saved.

 

*Do not forget the necessary xm.zip file to be placed in the '\mess\roms' folder containing the highscore binary!

xm.zip

[Note: Do not unzip the file]

Link to comment
Share on other sites

The Pacman demo does not sound right. The bass line seems distorted, kind of like it's clipping. I've never heard it first hand, so might have never been right.

 

One (ideal) test of what the output should sound like from the file example is to have the header stripped and running on an XM module. Of course if a PCB was to be built which supports the YM2151 and the file placed on that board running under the 7800, that would serve as providing the basis of the litmus test as well.

:ponder:

Link to comment
Share on other sites

Nothing too promising or definitive here, but one of the few non-US based computers I have looked into (Via emulation) is the X68000, which happens to utilize a YM2151 as its sound chip along with an OKI MSM6258.

 

There are two versions of Pac-Man - I did a quick capture of both here:

 

https://www.youtube.com/watch?v=DgC0lbkYiio

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...