|
ForumsSega Master System / Mark III / Game GearSG-1000 / SC-3000 / SF-7000 / OMV |
Home - Forums - Games - Scans - Maps - Cheats - Credits Music - Videos - Development - Hacks - Translations - Homebrew |
Author | Message |
---|---|
|
SG-1000/SC-3000/Mark III adapter to MS (no BIOS mod)
Posted: Wed Feb 23, 2022 8:50 pm
|
After discussing with Revo I realised I still have a few adapters I made some years ago allowing to play SG-1000/SG-3000/Mark III games on Western MS without the need of a BIOS mod.
Those have one extra wire (routing mistake). Revo is interested to buy them, but if there's enough interest I could make a new batch (this time with the wire patch fixed). Let me know your thoughts guys. |
|
|
Posted: Wed Feb 23, 2022 9:19 pm |
I might be interested in one although I still have the one I hacked together years ago. | |
|
Posted: Thu Feb 24, 2022 6:36 am |
Oh so you already have one that doesn't require a BIOS mod?
None of the SG-1000 games have a valid header and many of the Mark III games don't (either missing "TMR SEGA" string, wrong checksum or wrong region). |
|
|
Posted: Thu Feb 24, 2022 8:28 am |
What approach did you use to allow booting without a bios mod?
I started working on an adapter several years ago. I got a prototype working, although it needed a new pcb layout done. I never got around to finishing it off. I was planning to build region changing into it along with extra controller ports for use on a game without having to mod the gamegear itself. I also had card slot detection working on a master system so mycards didnt need a card catcher and it set up the colour table on a game gear so that sg1000 games worked. |
|
|
Posted: Thu Feb 24, 2022 8:56 am |
My approach is very simple and similar to what Sega did with the Power Base Converter, with a PLS153 PLD used to provide a few instructions on the data bus for proper initialisation.
I'm using a small PLD presenting itself as a 32KB ROM with correct header, disabling itself once the checks are done. I'll post pics later (need to transfer them from my phone). |
|
|
Posted: Thu Feb 24, 2022 4:08 pm |
Here's a screen capture from the CAD software (Mark III slot not supported by the 3D viewer):
|
|
|
Posted: Thu Feb 24, 2022 4:42 pm |
You could emulate an 8KB ROM to boot a little faster. | |
|
Posted: Thu Feb 24, 2022 5:05 pm Last edited by Apocalypse on Fri Feb 25, 2022 8:20 am; edited 1 time in total |
Oh yes, thanks Maxim, I completely forgot about that.
Do all BIOSes check for a valid header @1ff0? It's very easy for me to change the equations to simulate an 8KB ROM. [EDIT] Changed it to 8KB but am not able to see any visible difference. How much faster is that supposed to be? |
|
|
Posted: Thu Feb 24, 2022 11:40 pm Last edited by Maxim on Fri Feb 25, 2022 8:46 am; edited 1 time in total |
Yes, all BIOSes support it. The difference is the checksum time - so the time it takes to loop over the extra 24KB. I don’t remember the times exactly but I guess it’s not a lot - maybe on the order of 5-10ms per KB from memory.
There isn’t an “exploit” (that anyone can find) to bypass the BIOS checks. I think we theorised about forcing the bus to an instruction to boot the cart but it’s never been tried and presumably not a healthy thing to do. |
|
|
Posted: Fri Feb 25, 2022 3:06 am |
What about using the bus request pin to free up the bus and then writing to the io chip to enable cart slot and disable bios? Im not sure what happens with the z80 if its powered up with bus request active.. if it waited for the bus to become free before executing anything that should work. |
|
|
Posted: Fri Feb 25, 2022 5:27 am |
I like this.. its much simpler than what i was working on! Have you got a copy of the sg-1000 game video flipper that you can try with your adapter? Curious to know if that works fine or results in a non booting console. |
|
|
Posted: Fri Feb 25, 2022 7:03 am |
ms? Really? So we're talking 240ms at best? Some people really need to learn to be patient. ;) (JK, I appreciate your advice and I'm keeping the faster equations, thanks again.)
I don't own that game. There are many ways to "bypass" BIOS checks, but why going crazy when a single part can do it? You could bankswitch a physical ROM (achieving the same result as my PLD solution but with more parts). You could also spy on busses and assert busreq to inject whatever you want on the busses. A bit overkill... Out of curiosity wasup, what was your approach? |
|
|
Posted: Fri Feb 25, 2022 7:37 am |
Yes the Z80 does wait. But then, wouldn't we end up in the same situation as running MS games on the MD where some of them rely on initialisation from the BIOS? |
|
|
Posted: Fri Feb 25, 2022 7:50 am |
Mine does require a BIOS mod as it's entirely passive. |
|
|
Posted: Fri Feb 25, 2022 8:32 am |
I used the programmable logic in a cypress psoc to build an adressable latch that could be software controlled to switch between flash rom and the mkiii socket. The flash rom was switchable in 32k chunks and i was planning to add a menu with a bunch of useful utilities as well. As space was not really an issue and i was running code on the master system to make it all work i was able to copy code to ram and then set the stack pointer, load colour palletes for compatability of sg-1000 games on the game gear and check for cards in the card slot and run them if present. I found that a select few games, video flipper being one i had used an interesting pinout where /CE on the rom was connected to A15 on the cart connector. Since /CE on each slot is used to enable or disable it, this resulted in the game always being active and causing bus contention when the bios was active. I ended up OR-ing the cart A15 along with the cart /CE to fix this. I also found a weird issue with the card catcher needing the /CSRAM pin pulled down to ground to work properly. If it was tied directly to ground then carts like basic that had internal ram would short that pin to +5v and fun things might happen so it had to be done through a resistor. |
|
|
Posted: Fri Feb 25, 2022 9:09 am |
Thanks for the details @wasup.
For Video Flipper, what is !OE tied to? Adding an equation for A15 in the same way I do for !CE would work. But then I'm running out of outputs in my tiny PLD. An external LS139 would fix that (and now I'm doubling up the BOM lol). Regarding the Card Catcher, on my adapter !CSRAM is tied to !MC-F. This is needed by some games. Adding a pull-down resistor won't change anything as the signal would still be driven by !MC-F. What was !CSRAM connected to initially in your design? |
|
|
Posted: Fri Feb 25, 2022 9:39 am |
From memory the /OE pin on the video flipper cart was not connected to anything.
I initially had /CSRAM unconnected and floating as my understanding was that it was only an input to disable internal console ram, and wasnt used for anything else. Looking at a circuit diagram of the sg-1000 now, /CSRAM is actually connected to /CE on the ram chips.. so /MC-F would work. I guess my fix of pulling it low worked ok on a card catcher as they are only 32KB but wont have worked on other games that were larger and used it. Do you remember any of the games that required it to be connected? |
|
|
Posted: Fri Feb 25, 2022 11:15 am |
From the top of my head Phantasy Star, Space Harrier and Doki Doki Penguin needed it. | |
|
Posted: Wed Mar 02, 2022 10:04 am |
Now A15 handled properly.
@wasup can you open the card catcher and take pictures of what's inside please? It should be completely passive, I don't quite understand the !CSRAM issue. |
|
|
Posted: Wed Mar 02, 2022 10:22 pm |
This is great progress! Can I buy one from you somehow? | |
|
Posted: Thu Mar 03, 2022 7:49 am |
Pictures attached. /CSRAM goes to pin 3 of the card socket, which is /MemReq. I found that typically most cards use /CE as /CE on the rom and /M0-7 as /OE on the rom. Obviously there were exceptions.. but i dont remember exactly which games were. There was also some variations the same game that i couldn't get working with the card catcher. I never got around to completely looking into why. There is some info on one case of this here.. https://www.smspower.org/forums/17500-MkIIIF16MyCardVairants |
|
|
Posted: Thu Mar 03, 2022 8:29 am |
Thanks @wasup, I'm keeping !CSRAM connected to !MC-F then.
@bsitler, the current version is an old design from 2018, I've modified it to handle A15 properly as per @wasup advice with a bodge wire. I've now updated the design and will probably print a few of that revised version. |
|
|
Posted: Fri Mar 25, 2022 8:52 pm |
Apocalypse, i hope you continue the
development and the sale of this adapter, in future i need to buy one of this, sadly i'm not too much able with the DIY construction especially on the game hardware. Toshio |
|
|
Posted: Sat Mar 26, 2022 1:34 am |
If this ever becomes available I am interested as well. | |
|
Posted: Sat Mar 26, 2022 10:05 am |
Development is done, and it is available already. It is sold fully assembled.
Please see above. :) |
|
|
Posted: Sat Mar 26, 2022 10:13 am |
Paste the link! :-D | |
|
Posted: Sat Mar 26, 2022 11:37 am |
Interested :) | |
|
Posted: Sat Mar 26, 2022 4:31 pm Last edited by Apocalypse on Sat Mar 26, 2022 7:18 pm; edited 1 time in total |
Hi guys,
just send me a PM (out of stock at the moment but have already ordered a batch of 10 new blanks). |
|
|
Posted: Sat Mar 26, 2022 7:07 pm |
pm sent |
|
|
Posted: Sat Mar 26, 2022 7:15 pm |
Same! |
|
|
Posted: Sat Mar 26, 2022 10:06 pm |
PM sent! | |
|
Posted: Sun Mar 27, 2022 1:47 am |
PM Sent.
Toshio |
|
|
Posted: Sun Mar 27, 2022 6:11 am |
All reserved :)
I might receive the blanks next week, if not then it will delay things by at least 10 days (on a business trip early April). |
|
|
Posted: Tue Feb 21, 2023 11:19 pm |
did anything ever happen with this? I would really like to have one now.
if none are available for sale. can I get gerber files so I can order one my own via for example JLCPCB, and also get to know which chips were needed. and maybe if there is a case in .STL |
|
|
Posted: Tue Feb 21, 2023 11:45 pm |
It's been available for a while now.
You can order it from there: https://www.arcade-projects.com/threads/now-available-apocalypses-first-console-... |
|
|
Posted: Mon Aug 28, 2023 1:33 pm |
do they work on a genesis with a power base mini?
also, when are you expecting to do a release with a shell? |
|
|
Posted: Mon Aug 28, 2023 5:23 pm |
I don't recall if it's been mentioned here but doesn't the SG-1000, etc. games have incorrect palletes on the SMS? If yes, does this adapter compensate for that?
EDIT: Nevermind, saw your other post saying it's not possible. Oh well. |
|
|
Posted: Mon Aug 28, 2023 5:31 pm |
I'd also like to know |
|
|
Posted: Mon Sep 25, 2023 6:15 am |
How does this support SG-1000 My Cards when the Power Base converter does not? | |
|
Posted: Mon Sep 25, 2023 3:35 pm |
SMS VDP has support (though with unattractive colors) for the TMS video modes used in SG-1000 games. Game Gear VDP supports these modes too, but the palette registers (CRAM) must be written with suitable values first. Mega Drive / Genesis VDP does not support them at all. SG-1000 My Cards will lack the TMR SEGA header bytes. In a Mark III or Japanese SMS, a no-BIOS Game Gear, or a Mega Drive / Genesis this will not prevent program start-up. In an export SMS the game won't start unless the BIOS is replaced or turned off though, and same for a Game Gear with BIOS. So, to use this adapter in an export SMS or BIOS-ful Game Gear to play My Card you will need a program in the adapter to contain a TMR SEGA header and then transfer control to the card once the BIOS boots that program. To use this adapter in any Game Gear to play the game, you will want a program in the adapter to first establish the correct color palette entries for TMS video modes With a bootstrap ROM in the adapter both can be achieved, and a Game Gear (with a Master Gear Converter or similar also installed below, and a Card Catcher above) can use this adapter to play SG-1000 My Card games. An SMS can do the same but won't need a Master Gear Converter With a Power Base Converter installed below and a Card Catcher installed above this will allow SG-1000 programs to start on Mega Drive/Genesis too, but the graphics will not be visible. Sometimes their music can be heard, though |
|
|
Posted: Fri Oct 20, 2023 3:42 am |
Just saw your response, thanks for all the info. Very impressive! | |