olaf Posted October 15, 2006 Share Posted October 15, 2006 Well, I've embarked on a new emulation project. I was browsing the SMS Power message bored yesterday and I found the source code to a Sega Master System emulator written in Microsoft Visual Basic (my language of choice). I was just talking about the day before how I'd love to start working on a Sega Master System emulator -- it was fate. The source code I found was that of vbSMS written by John Casey ("brom" on SMS Power). It lacked an interface, required you to "drag 'n drop" ROM files to play them, lacked window sizing, and lacked many other things. You can download the source for yourself here or download a compiled version here to try it out (vbSMS -- not my emulator). Once I downloaded it, I immediately went to work. First, I added a menu system to the window. After that I actually made the menu items usable -- such as the "load rom..." menu item. Now it had the ability to load ROM files with a regular Windows "Open" dialog. Added right after that was the ability to "close" the ROM being executed. Now that I could open and close ROMs, I felt it was time to be able to pause and reset (for some reason these weren't implemented yet, but I personally find them crucial to even a preliminary emulator). Seeing that this was a Sega Master System emulator and knowing that the Sega Game Gear system is very similar -- I tried to load a Sega Game Gear game. It ran perfectly, but the palette was horrible (which is fine for right now, and I still have not fixed this) -- and the Start button wasn't implemented. I did a few minutes of research on the Sega Game Gear's hardware and added in support for its Start button. I also found that John Casey put in a lot of CPU activity alerts to learn more about how the CPU was working so he could fix things. The pop-ups were annoying me, so I removed them -- so I could just get to playing the games. Whilest enjoying just "playing the games", I got annoyed that I had to play in a tiny window -- so I added window sizing. After that, I hardcoded the palette files that came with vbSMS into the source code (why? I don't know, I just don't like emulators coming with a bunch of files -- I want them to just work in a single file or something). When all that was said and done, I added settings saving. Now, why did I explain all this? I guess to announce my new project (which I'm really excited about -- I grew up on Sega Master System and I've wanted to work on a Sega Master System emulator for some times) and to give a little insight on how people pick up on open source projects (especially me). Below are some screen shots of my emulator in action (dubbed olafsms for now). I'm not sure when I'm going to publicly release this, but I'll keep everyone posted? Sonic the Hedgehog (SMS) Zillion (SMS) -- personally, one of my most favorite games ever. Ghost House (SMS) -- my family played this so much when I was little. Phantasy Star (SMS) Ariel - the Little Mermaid (GG) -- this is how Game Gear games look right now. Link to comment Share on other sites More sharing options...
olaf Posted October 15, 2006 Author Share Posted October 15, 2006 This just in -- I added support for border masking while executing in Sega Game Gear mode. Below are screenshots... Ristar the Shooting Star -- in greyscale mode (makes Sega Game Gear games somewhat less harsh on the eyes) Mortal Kombat 3 -- in normal f'd up palette mode Link to comment Share on other sites More sharing options...
Gryph Posted October 15, 2006 Share Posted October 15, 2006 Very cool, nice work. Keep us posted. SMS was a great system. Link to comment Share on other sites More sharing options...
Robert Posted October 15, 2006 Share Posted October 15, 2006 Very nice! Is it possible to get full screen (like HazeMD), or close to it? Oh, and if you get Lemmings to work properly, please let me know. Thanks! Link to comment Share on other sites More sharing options...
olaf Posted October 15, 2006 Author Share Posted October 15, 2006 (edited) At the moment there isn't a full screen option (you couldn't even do double size before, but thanks to me window sizing is now possible), however, I definitely plan on adding it in the near future. Oh, and... Edited October 15, 2006 by olaf Link to comment Share on other sites More sharing options...
Robert Posted October 15, 2006 Share Posted October 15, 2006 Hah, excellent! The only emulators I looked at have corrupted graphics on that screen. Link to comment Share on other sites More sharing options...
olaf Posted October 15, 2006 Author Share Posted October 15, 2006 Forgot to mention during all of this posting that vbSMS lacked sound support, however, SMS sound looks rather easy to implement. Link to comment Share on other sites More sharing options...
olaf Posted October 16, 2006 Author Share Posted October 16, 2006 (edited) Fixed border masking for the Sega Game Gear. I was accidentally cutting off 1 more column than I needed to on the left side. Sonic Blast in grayscale mode. Edited October 16, 2006 by olaf Link to comment Share on other sites More sharing options...
retroK Posted October 16, 2006 Share Posted October 16, 2006 Thanks olaf! Keep up the good work. You should definately release this. Link to comment Share on other sites More sharing options...
olaf Posted October 16, 2006 Author Share Posted October 16, 2006 No, thank you, retroK, for paying attention to my project(s). I plan on releasing it when it gets a little more feature rich and when I decide if I'm going to stick with the name "olafsms" and other things. On that note, I just got done adding in support for control port #2 (this wasn't in vbSMS along with the Game Gear's Start button like I've said previously). Bubble Bobble with 2 players Link to comment Share on other sites More sharing options...
Robert Posted October 16, 2006 Share Posted October 16, 2006 I noticed this got posted on the emulation-4-ever news already. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now