#1 Members - Reputation: 498
Posted 19 October 2012 - 02:41 PM
So having finished my Degree this week and a basic Java Ray-casting demo, I'm kind of heart-set on a bit of retro-console programming as my next project. Most likely not a full game, but at least a demo or two. One concern I do have - I don't want to have to physically or software-wise modifiy a console to run my demos.
There seems to be two possible target platforms: The DreamCast(wow, I really want one of those in my collection!) or....the sega Mega-CD. Both seem to only require a user to burn a demo/game to a CD and then just pop it in the console as it is. I think the Mega-CD is going to be difficult, but the DreamCast appears to require a knowledge of C which I'm quite happy to use...
I used to program in C/C++, moved on to Java and Visual Basic for my education and even dipped my toe in C64 assembly(still a beginner, though). I would very much like to have someone's opinion on this (foolish?) ambition that has actually done some console homebrewing - and educate me as to the harsh realities one will face, and if there is an ideal console to homebrew for.
Many thanks.
#2 Members - Reputation: 330
Posted 19 October 2012 - 03:23 PM
#3 Members - Reputation: 498
Posted 19 October 2012 - 03:39 PM
I didn't know one could use a boot cd for the DreamCast, although I do wonder if Gunlord uses one. For a small team I doubt they have paid a licence to Sega to run the Game without such a disk...if barely legal.
Oh well, its food thought. Cheers.
#4 Moderators - Reputation: 7806
Posted 19 October 2012 - 03:45 PM
It comes down to WHY you are doing it.I would very much like to have someone's opinion on this (foolish?) ambition that has actually done some console homebrewing - and educate me as to the harsh realities one will face, and if there is an ideal console to homebrew for.
If you have some passion to develop on some old machine, maybe an old Atari 2600, or an old Vectrex, or an old DreamCast, then follow it if you want to. Just understand that VERY few people will understand what you have done and why you have done it.
Occasionally a few collectors will take an interest in homebrew ROM images for old machines. There are very few of them, but they do exist.
Check the forum FAQ for some DreamCast links if that is your interest. They're at the bottom, about to drop off the page.
#5 Members - Reputation: 330
Posted 19 October 2012 - 04:00 PM
[...]although I do wonder if Gunlord uses one. For a small team I doubt they have paid a licence to Sega[...]
Well, from what I can see they have released the game on the retail market so yes they probably did. They have registered domain names for both the game and the developers and created two other games, so it's more serious than a basement project. If that's the way you want to do it, fine, go ahead and contact Sega, ask to become a licensed developer and you will get a devkit with the libraries needed and the documentation with it. It won't be free though, if still available. Otherwise, stick to the underground homebrew scene and you will find many people still playing with it and eager to help you.
Edited by Dunge, 19 October 2012 - 04:01 PM.
#6 Members - Reputation: 3503
Posted 19 October 2012 - 04:14 PM
If you are going to put in all that effort to make a nice game, you might as well have an audience of more than six. You'll have nothing to show for it at the end.
Edited by Daaark, 19 October 2012 - 04:15 PM.
#7 Members - Reputation: 162
Posted 19 October 2012 - 09:03 PM
#8 Members - Reputation: 498
Posted 20 October 2012 - 05:25 AM
The Android/iOS is something...I just can't stand things like the iPad. I actually sell them at work, but apart from launching a red bird from a catapult...I don't get much buzz from using them.
Yes, I have indeed seen Pier Solar! The packaging alone is gorgeous, and the game itself is simply amazing - a 64MB Megadrive game is like...I dunno, its the "Chuck Norris" of Megadrive carts! I also think its cool how it also comes with a MegaCD cd to enhance the game if you happen to also own a MegaCD...o_O
But anyway, thanks for all the input. I forgot how friendly and helpful GameDev was. To have replies so soon is great.
Cheers!
#9 Members - Reputation: 957
Posted 21 October 2012 - 01:23 PM
Or use a MilCD enabled Dreamcast, which can boot CDs just fine without any special requirements... (well, the boot program has its bytes shuffled and an audio track has to come first, but that's it from what I know, no need to use specific software or custom signatures or anything like that)Doing homebrew programming is on the limit of legality depending on the country you live in. To play a burned CD-R on a DreamCast, you either need to install a modchip, or use a boot cd, again barely legal.
#10 Members - Reputation: 498
Posted 23 October 2012 - 08:47 AM
The MilCD sounds brilliant, but apparently they are very hard to obtain. Sega caught on to its weakness early on and stopped producing them. Still, the DreamCast is quite appealing with its CD(compatible) format and even a VGA connection. And that controller is simply champion!
#11 Members - Reputation: 1050
Posted 23 October 2012 - 02:05 PM
As for homebrew. I tend to roll with: if its not using copyrighted code and your not mucking around with hacking the console (ie like my dreamcast, burn CD>put it in>it works) then its probably not going to get you in trouble in any way. Infact I can't find a law outside of the console EULA that says otherwise.
Your alternative is to develop your game and then run it in an emulator. Similar to homebrew, emulation of a console is in a legal grey area but once again I roll with: if the emulator isn't using copyrighted code (such as console bios etc) then its not really a problem. The roms are another matter as many are of course pirated versions of commercial games but most homebrew was written as free (sometimes open source) software in the first place so is indeed legal (until the issue of running it above). So IMO: emulator + homebrew probably legal.
#12 Members - Reputation: 498
Posted 24 October 2012 - 02:51 PM
Looking at the idea of developing for a dead console, I weighed up whether it was a waste of time or not...and I've decided to go ahead with developing a demo or two for the DreamCast. At the end of the day, its a personal project that gives me an excuse to ditch Java for a while and go back to C/C++. At least from that angle I'm getting more experience in that language...
Once again, thanks to all who have taken time out to reply here.
#13 Members - Reputation: 2763
Posted 24 October 2012 - 03:55 PM
If you want and audience and a fixed (or mostly-so) platform, iOS, Android, Windows Phone, Windows RT, Xbox Live Indie Games, or the Playstation Suite are your best bets.
If instead you're after a more bare-metal programming experience, then you want to look at the Dreamcast, GBA, Nintendo DS, or Older consoles like the Genesis, Master-System, NES, or Gameboy, depending on how retro/limited you want to go. You could also pick up a modern microcontroller board like an arduino or Stellaris board if you want the bare-metal experience and can live without the games focus, or other kits (like the Uzebox, or Andre' LaMothe's kits) if you can't.
In all cases, emulators are what you'd use for most of your development, as burning ROMs or compact discs gets rather tedious and expensive after a time, and debugging facilities are rather limited. You need to test real hardware early and often to ensure that you can run on the genuine article (if you care), but it's not your main development target.
#14 Members - Reputation: 498
Posted 25 October 2012 - 01:56 PM
I was looking at, Ravyne, the Raspberry Pi for some assembly programming as it seems perfect for learning programming(not that I need to, but its experience all the same). It runs an ARM processor similar to the ones in the GBA and DS, so I might give that shot if the DreamCast thing falls flat on its face.
But yes, thanks for the input!
#15 Members - Reputation: 2763
Posted 25 October 2012 - 03:11 PM
So, for like $40 bucks you can have that bare-metal, console-like experience, on a very well-documented, powerful platform. It's got an ARM11 processor which I believe supports the vector instruction set, which runs at up to 1ghz, has 512MB of ram, 10/100 ethernet, USB, HDMI and composite out, and some GPIO to boot.
It would be a good bit of work to get it up and running from bare metal, but there's an educational course on building an OS for the Pi to start, but its doable now. That's why I didn't mention the Pi before, because up until now the only way to get at the GPU was through linux.
The Pi is every bit as capable as an Xbox, PS2, Gamecube, or Wii, but with a more flexible GPU.
#16 Members - Reputation: 498
Posted 25 October 2012 - 04:05 PM
Whilst I certainly don't hold my breath for it, it would be interesting if they could get a games market set up for the PI. Not sure if one could use SD cards or even just a download service similar to Steam. I reckon the Foundation should make a third model with a DVD-drive and an additional USB for a joypad...that would be so perfect!
#17 Members - Reputation: 1050
Posted 26 October 2012 - 12:37 PM
But sure, ultimately the pi will attempt to boot any valid code on that card. If you write your game entirely bare metal for the pi, whack it on an SD card, it will boot assuming there are no bugs anywhere. Getting gamepad input might be a little tricky though seeming as you would be writing drivers yourself.






