tdlabac / MSX1_MiSTer

GNU General Public License v2.0
21 stars 4 forks source link

Add support for 2nd cartridge #16

Closed wwark closed 1 year ago

wwark commented 1 year ago

Hi,

If it is possible to add it. It will permits two things at least:

Thanks

GuerreroNinja commented 1 year ago

Having a second slot cartridge may be useful also for attaching the KANJI.ROM in case you need it.

Edit: Oh sorry @wwark , I missed you already stated that in OP message... lol I must be too tired today!

tdlabac commented 1 year ago

First beta version.

Added support for three slots. The presence and size of the SDRAM module is taken into account.

Without SDRAM SLOT A - FDD support only, Gamemaster2 SRAM (untested) SLOT B - ROM max size 256 kB SLOT C - 64kB Memory

SDRAM 32Mb SLOT A - ROM max size 256 MB, FDD SLOT B - ROM max size 4 MB SLOT C - 64kB Memory

SDRAM > 32Mb SLOT A - ROM max size 4 MB, FDD SLOT B - ROM max size 4 MB SLOT C - 64kB Memory

SCC sound is not yet implemented

https://github.com/tdlabac/MSX1_MiSTer/blob/Slots/releases/MSX1_20221115_slots.rbf

GuerreroNinja commented 1 year ago

Thank you, that's GREAT!

wwark commented 1 year ago

Thank you !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Nemesis 2 (Gradius 2) slot A combined with Penguin Adventure slot B. Your ship is a Penguin, and energy capsules are fishes. 20221115_200334-Yume Tairiku Adventure (1986)(Konami)(Japan)(MSX1)(Konami)

nonochus commented 1 year ago

Very Thanks!!!

tdlabac commented 1 year ago

Next beta version. https://github.com/tdlabac/MSX1_MiSTer/blob/Slots/releases/MSX1_20221117_slots.rbf SCC sound is working again. Fixed bug in mapper detection. Display what mapper was automatically detected. (USR BTN)

GuerreroNinja commented 1 year ago

Thanks a million!!

nonochus commented 1 year ago

Preliminary test (about 30 min), all seens working well, konami combinations working.SCC working again (still sounds weird)

mapper detection working really well, only rtype original (rtype ASCII8 modified works in auto)still have to put manual maper, tested also with custom dinamic games roms and devs roms for example, all works in auto.Much better!!!

Also in this test version a graphical bug that existed in games like "Mortadelo y Filemon" (clever and smart) and aliens version electric dreams, which did not show the graphics well at all, has been corrected.I had it pending to report but I did not want to put more issues so as not to disturb since it was a minor bug.

I'll test it more thoroughly, now I'm going to sleep! in general improving more and more!

Thank you very much!

P.D: @tdlabac I insist, do you have paypal or patreon or buymeacoffee?

I would be happy to donate something in gratitude for your efforts and a donation without obligation, just to thank you.

wwark commented 1 year ago

Thank you @tdlabac will test it this week-end !!!

@nonochus regarding the graphical issue, is it also present on the core 20221112 ? If so maybe it will be great to create a new issue with screenshot ? Thank you !!!

nonochus commented 1 year ago

Mortadelo y Filemon (1988)(Dro Soft)(ES).zip @wwark It is difficult to make a capture/screenshot of the problem and more in a CRT tube television, I attach the DSK file so that you can try it, remember to insert the disk.reset and hold the "CTRL" key to release all the possible memory. Once in the menu press 3 to start playing. You will see that the graphics seem to tremble. I don't know if HDMI will do the same.

The error occurs in the latest version 20221112 and earlier but in the latest test version it is corrected.

tdlabac commented 1 year ago

Mortadelo y Filemon (1988)(Dro Soft)(ES).zip @wwark It is difficult to make a capture/screenshot of the problem and more in a CRT tube television, I attach the DSK file so that you can try it, remember to insert the disk.reset and hold the "CTRL" key to release all the possible memory. Once in the menu press 3 to start playing. You will see that the graphics seem to tremble. I don't know if HDMI will do the same.

The error occurs in the latest version 20221112 and earlier but in the latest test version it is corrected.

Both beta versions contain a minor change in the number of video lines. The reason was to align the interrupts with the number of CPU clock speeds. This may be the reason for fixing bugs in the graphics.

tdlabac commented 1 year ago

mapper detection working really well, only rtype original (rtype ASCII8 modified works in auto)still have to put manual maper, tested also with custom dinamic games roms and devs roms for example, all works in auto.Much better!!!

The automatically recognized mappers are only the basic ones. Atypical mappers are not recognized. There is no DB of games with mapper assignment in core. Content heuristics are used when loading ROMs into memory.

tdlabac commented 1 year ago

Preliminary test (about 30 min), all seens working well, konami combinations working.SCC working again (still sounds weird)

This is gonna be harder to find. Unfortunately, my ears can't hear it. What should I focus on?

GuerreroNinja commented 1 year ago

Preliminary test (about 30 min), all seens working well, konami combinations working.SCC working again (still sounds weird)

This is gonna be harder to find. Unfortunately, my ears can't hear it. What should I focus on?

Can you use the SCC implementation of KdL MSX core? It is difficult to explain the differences, but are quite noticeably (percussion channel is louder than instruments, sounds are quite different, I think the sound lacks channels, etc.). Perhaps someone with music knowledge can explain where are the problems with more precision, I will ask someone.

nonochus commented 1 year ago

I know that SCC sounds strange because, for example, I have listened to certain music many times, both in real hardware and in an emulator, and I know that they do not sound the same or they do not sound good at least for me.

The game with which I usually try it is with the f1 spirit, I have played it many times, and both the music of the intro and the music within the first race, which are the ones I have heard the most times, are worth it to know if it is good Or not to my humble ears.

I leave you a youtube video: https://www.youtube.com/watch?v=S4G4XvqnHmk&t=140s

At 00:12 the music of the game starts and until 6:00 min you have a good reference. If you listen to the core and listen to the video you see that the core sounds strange. In the video it sounds as it should or at least it it's very close.

I hope it helps you, otherwise I'll find a better way to try to explain why it sounds weird.

nonochus commented 1 year ago

As @GuerreroNinja say, "It is difficult to explain the differences, but are quite noticeably " I think the youtubve video of f1 spirit is good reference for see the differences.

tdlabac commented 1 year ago

Preliminary test (about 30 min), all seens working well, konami combinations working.SCC working again (still sounds weird)

Please try this edition. I found two bugs causing an error in SCC waveform playback. https://github.com/tdlabac/MSX1_MiSTer/blob/Slots/releases/MSX1_20221127_slots.rbf

wwark commented 1 year ago

It is a great improvement thank you !

tdlabac commented 1 year ago

Add support 2n cartrige in release 20221127

nonochus commented 1 year ago

tested, for me it sounds perfect !!!! please, that more people confirm.

I haven't been able to test certain ROMs like the SCC version of knightmare because they don't load, but maybe it's because I have bad cartridge dumps. I'll test this thoroughly this week.

The important thing now was to test the part of the SCC sound, I hear it perfectly.

Thank you very much! excellent work! Without those bugs it sounds great!

tdlabac commented 1 year ago

I haven't been able to test certain ROMs like the SCC version of knightmare because they don't load, but maybe it's because I have bad cartridge dumps. I'll test this thoroughly this week.

It is possible that the mapper is not detecting itself correctly. In the current version it is possible to check which mapper has been used. Just press the USER button. If the KonamiSCC mapper is not detected, it can be overwritten in the menu.

nonochus commented 1 year ago

It is possible that the mapper is not detecting itself correctly. In the current version it is possible to check which mapper has been used. Just press the USER button. If the KonamiSCC mapper is not detected, it can be overwritten in the menu.

I managed to make them work, for some reason, the roms I had were of "non-standard" sizes 40kb, 52kb for example. It seems that if they are not 16k, 32k, 64k or 128k roms, the core does not load them, even forcing the konami SCC mapper does not work. You have to either look for the standard size roms on the internet or modify the non-standard rom with a hexadecimal editor and leave it in standard size, I add zeros to the end of the non-standard rom until I leave it at following standard size.

Once this is done, the core loads them without problem and detects them automatically.

The SCC sound sounds GREAT!!!!!!!!! Thank you very much!

tdlabac commented 1 year ago

I managed to make them work, for some reason, the roms I had were of "non-standard" sizes 40kb, 52kb for example. It seems that if they are not 16k, 32k, 64k or 128k roms, the core does not load them, even forcing the konami SCC mapper does not work. You have to either look for the standard size roms on the internet or modify the non-standard rom with a hexadecimal editor and leave it in standard size, I add zeros to the end of the non-standard rom until I leave it at following standard size.

It depends on the size of the ROM. If the ROM is not aligned to multiples of the mapper bank size, the mapper will not work properly.