Domain: allusion.net
Stories and comments across the archive that link to allusion.net.
Comments · 23
-
DC is a good console (12 years old and counting)
Umm... the Dreamcast most of the time used a propietary system called "Katana", I think that was a linux fork, because the Sega guys though that WinCE sucks. Also for the Dreamcast was created a free "OS" called KallistiOS that is used even today... well, only for Dreamcast Homebrew fans. The newest game in development for the DC its called Sturmwind,, check the entry on wikipedia. If you ever played Resident Evil: Code Veronica on the Dreamcast and on PS2 you notice that it looks better on the DC and on the PS2 there is a longer "loading" time every time you open a door. And when Sega told Micro$oft that design a OS for the DC, M$ take note of the console and then they decide to make the XBOX. You must compare the controls of the first XBOX and the DC, they are very similar Anyway the point is that right now, in the spirit of hacking, they think that the Dreamcast was a good console because was well designed and you can use it to create Homebrew games or emulators. I don't consider myself a hacker, only a Dreamcast fan, and I think that I can understand at least they feelings for that magnificent console.
-
Similarly in logitech
I don't know if it's true or just an urban legend, but it's a funny concept.
Logitech's DOS mouse driver MOUSE.COM (dumped from an actual copy I've here) :This is a LOGITECH mouse driver, but some software expect here the following string:*** This is Copyright 1983 Microsoft ***
Also mentioned here by other /.ers :
The Dreamcast boot code checks and runs only games that display "PRODUCED BY OR UNDER LICENSE FROM SEGA" in their Loader.
Opensource environment like KallistiOS feature a Loader that displays the required string on-sreen, and then adds an explanation that in fact, it's not under Sega's License, but that the string is required to the game to boot.
So the trick isn't urban legend and is genuinly used to circumvent such string checks, although I don't know if the trick was also used by PC BIOS cloners -
XBOX series *LACKS* important DC features
The article also goes on to mention why the 360 will not fail miserably like the Dreamcast.
Marketing ?
and deeper pockets.
---
There's also a big difference between DreamCast and Microsoft's consoles :
- DreamCast : runs home brewed software out-of-the-box (although on CD-R and not on GD-ROM).
Some free developpement kits where available for it (KallistiOS)
Some were even blessed by Sega (some *BSD)
- Xbox 1 : DRM filled shit. You must put Mod-Chip inside or exploit bugs to be able to do whatever you want to do with a piece of hardware you paid for.
Microsoft has even tried to stop this, either suing Lik-Sang for providing mod-chips, or trying to lock user with software exploits out of XBox Live.
Developpement has only been possible on the XBox because it is basically a repackaged PC architecture and because the Windows based software is filled with bugs. Developpers have asked to be provided keys to sign software for unmodded X-Boxes but no answers from Microsoft
- Xbox 360 will surely have even more DRM barriers against homebrewer. And isn't PC architecture anymore
---
BTW: DreamCast is not *powered* on Windows CE, but *compatible* with Windows CE. (according to the sticker).
In fact, most of the commercial games are designed using Katana (Sega's own proprietary system),
and most homebrewed software us KallistiOS.
XBOX runs a modified Windows 2k and Microsoft is putting a great deal of efforts to be sure that nothing else runs on it. -
Re:Linux needs games!
What exactly would you use the OS for on a console? Drivers are unnecessary since low level access can be compiled into the game binary
In theory you're right, but there's a couple of reasons why nobody does like this actually :
- The abstraction layer of the OS are making everything so slow ? Ok so let's drop the OS. Oh, and as we are at it : let's drop all librairies at all. Let's write a complete game in plain C from scratch. And let's drop the C and write the game using pure assemblere, so we can optimize every signle instruction by hand....
Once upon a time it could be done like this. On some old 8bit console, all you had to do to create a game was to write a short program, under a few thousand instruction, It had only to read input from joy pad, a move 1 or 2 sprites on screen (using hardware sprites) and do some very basic sprite-to-background (hardware assisted) collision detections. This could be done by hand, without using any other library.
Nowadays games are much more complicated : you've got more complexe graphics, you must have realistic physics. Your GFX hardware is much more general purpose (which is good), but that means you must implement everything ("3D mesh of a warrior running on a height-field ground" isn't a single hardware feature). Plus you have internet, savegames hardware (harddisk or memory stick) where files must be shared with other applications (hence the need of a file system) etc...
Still wanna write a full online game, with a robust TCP/IP stack, and everything else including in-game voice-chat with other players ?...
Modern console DO NEED an OS, because it's getting just to much work to re-invent the wheel everytime you write a new game. Yes, the OS adds an overhead, compared to hand-optimized assembler. But it removes a lot of head-ache from developpement process, and moderne consoles have more powerful processors : it's not only to make them run faster, it's also to make the overhead of OS and librairies more negligible.
But any OS could do the job. Actually, some early console of this generation could run multiple OSes. The DreamCast had a minimalist BIOS that could just check and boot watever OS was on the GD-ROM. Most of the games were built using SEGA's proprietary system "Katana". But there were also a few games made using Microsoft's Windows CE (hence the "compatible with..." logo on the front), most homebrew games are done using KallistiOS, some fans managed to port the penguin to this console. You have the choice of the OS (DreamCast will boot any of them), but you have to use one, because few sane people want to code a 3D application by hand in SuperH assembler....
If a game wanted to use a customized Linux, the dev can customize Linux themselves and come out with exactly the version they want.
Yes the "boot whatever customized OS you-like" is cool. But console esigner don't do it. They like to force THEIR proprietary OS because of :
- Copy protection. Even as far as the NES and the Genesis, some version of the console had BIOSes whose only purpose was to check if the cartridge is licensed and if it's not imported. Beside of this, the BIOSes were completly useless. (Prior BIOS-less version of the console ran the same game without any differences, and today emulator don't need BIOSes to run this games). But it helped constructors to remove control form end users.
Microsoft could have done some "boot your own favorite OS" console like the Dreamcast. But instead they've choosen to design a console with a Windows-2000-based kernel. The user has no other choice than to boot Dashboard, before everything else, and then the Dashboard will decide what the user can and can't do...
And game designer HAVE to pay a license for the constuctor's proprietary OS because they cannot use anything else.
- The abstraction layer of the OS are making everything so slow ? Ok so let's drop the OS. Oh, and as we are at it : let's drop all librairies at all. Let's write a complete game in plain C from scratch. And let's drop the C and write the game using pure assemblere, so we can optimize every signle instruction by hand....
-
Re:A slow emulator is...I am assume you don't know anything about Dave's Classics and the history of console emulation (on any machine). I assume you don't realize that every project has to start some where and that full speed on the first release has basically only been accomplished by Bloodlust. I assume that you realize the Dreamcast has still not been fully explored or exploited to its full potential and that everything that has been done for it thus far is the result of some very hard work by some very talented people (sorry for leaving out others - just making a point).
In short, don't insult a scene because you use it to play free games and expect them to run perfectly without any contribution. Emulation is about learning. It is not about getting things for free.
-
KOS Link
I forgot.. whoops
:) Link to KOS for anyone who's interested. -
Fun hardware.Without the hard work of Dan Potter, I wouldn't have gotten into it.
Back in the early libdream days, you had to write your own routines for 2D graphics (3D was still off-limits) by writing directly to video RAM. Today, KOS supports 3D acceleration via the PowerVR chip, as well as support for various other pieces of once-mysterious hardware. And the SDL port lets you take a break from writing directly to video memory if you're doing 2D.
dcQuad is another Dreamcast project which I started working on after finishing the DC version of robotfindskitten. I've been messing around with SDL in Windows a bit lately, and I look forward to getting up to speed on the KOS implementation for my next project.
-
Re:How does this work?
So how does this actually work, legally speaking? I thought the GPL prevented code from changing licenses after being released under the GPL.
This is a common misconception about the GPL (and about copyright law in general) which we had to deal with when we were talking with some Sega folks a long time ago regarding KallistiOS.
We first published it under the GPL, which they believed meant that it could never be used in anything except GPL'd software, ever. The very next version we released an updated code base under a "new BSD" license. Everyone was scratching their heads... "How can you do that since you already released it under the GPL? I thought that was it?" The answer is that we still owned 100% of the copyrights in the code base, and we voluntarily issued a new version under the terms of the BSD license. The older version, of course, could still be used under the terms of the GPL since we already licensed it to the public.
Basically when you own the copyrights for something, you can do whatever you want to do with new versions (or the old versions, depending on how you licensed it to begin with). You can republish the same exact piece under a different license, or you can even pull back in all your new codebase and make it proprietary. The key thing is, has anyone else contributed a copyright to the work that would make it a joint copyright situation? In that case, you'd also need the permission of that contributor to make that and any future license changes.
Thus we get back to where most Free Software folks understand the situation: e.g., in the Linux kernel, there are about a billion different copyrights on it. Linus, or any one contributor, could never change the license on the kernel. They'd need the permission of every contributor to the kernel, or they'd need to get them to sign over all their copyrights. So once people start contributing to your project, under their own copyright, you can't change the license anymore. You could always rip out their code and publish your own version with a new license, of course, assuming you could distinguish who wrote what code with 100% certainty.
That's why the article's author went on a long spiel about MySQL vs Linux: MySQL retained 100% of their copyrights, so they can dual license their code base or do whatever they want with it; Linux can not be relicensed that way. If someone contributes code to MySQL AB, I'm assuming they force you to sign over the copyrights before they'll include it in their internal code base. Linus doesn't. This is also, incidentally, one of the major strengths of Linux-style Free Software -- it's de facto free forever, because one company can never make the future official versions of the project proprietary.
Take all that with a grain of salt, standard CYA/IANAL applies, but I've been studying this crapola for a while on my own
:) -
Re:Homebrew
Slightly incorrect link there (it's my site
:)
gamedev.allusion.net
and here's another for you:
cagames.com
Honestly I can't see why people on here keep harping on and on about Linux and NetBSD on the Dreamcast, when its main use these days is for development console homebrew games. :) Of course Linux for DC is also getting some nice support that will enable this as well, but it's a bit behind the other stuff that's out. -
Homebrew
-
Re:Dreamcast Gets No Love, As Always.
"Amen." Most definately - I am an active member of the DCDev scene - it is truly an amazing console. And if emulation isn't your "thing", and you have something morally against ROMs, those aren't the only things on DreamCast. There's my Snake3D port, which is currently pretty ugly, but works, there's c99's 3D Pong clone, and Dan's Feet of Fury. Plus, there's Linux and NetBSD, not ot mention the homebrew KallistiOS. And all for free... Also available at DCEmu.
--joshua -
Amazing.. why not Dreamcast?
It really never ceases to amaze me how people talk about the PS2 Linux kit as if it's the only way they'll ever get a chance to develop for a real console.
Well, for about $120 worth of hardware (and that includes the console itself, which is still capable of playing tons of great games) you can buy yourself a "Dreamcast devel kit", complete with a BSD licensed toolkit (see SourceForge link), an active hobbyist community, etc. Oh and did I mention, unfettered access to the vast majority of the hardware and to-the-metal performance? How about the ability to burn a CD of your game for anyone who owns a Dreamcast to play it?
Of course, I'm a bit biased, being in charge of the development of said software kit. ;-) So for fairness, I'll also mention the DC Linux port to the Dreamcast, also with a decent amount of hardware and lib support now.
I'm interested in getting a PS2 Linux kit too, but I just want people to be aware that there are other ways as well. -
This was used in Lord of the Rings
No, this isn't a joke.. =)
I haven't touched uIP myself, but we're using lwIP (its big brother) in KallistiOS, the DC hobbyist OS project. Adam sent this to me pretty recently and I thought it kicked ass beyond belief:
lwIP will be used in the post-production of Lord of the Rings 2 and 3
-Dan Potter -
Re:Hey SEGA open source DreamCast software/hardwar
Why does it matter if Sega in particular releases dev tools or hardware specs? Virtually all of the specs are known, it's not as if they are a secret. As for open source, can anyone say "gcc"? That's right, a little quick cross-compilation and you have yourself a DC game. DCEmulation.com and Marcus' DC Dev have loads of information on the subject. Cryptic Allusion is the home of KallistiOS, one of (IMHO) the best DC development libs in existance. If you have a jonesin' to make yourself some games on DC, head over to these sites and you should be all set!
Uhhh, yeah and C/C++ skills would be a plus, heh.
Now just sit back and pray that your DC can boot your game there ;) -
DreamcastAs well as being the cheapest to purchase, the Dreamcast is the best next-gen console to program for. There's plenty of programming info out there, here's a few links.
http://mc.pp.se/dc/
http://dcdev.allusion.net/
http://www.boob.co.ukThe GameBoy Advance is also rather lovely to code for, although it does require special hardware to get started..
-
DreamcastThe dreamcast development scene is quite good. I suggest some of the standard places like Marcus Comstedt's Page and Dan Potter's DC Dev Page. I've just bought myself the serial slave cable from Lik Sang and I plan to start coding soon.
I don't know what the PS2 situation is like.
-
If you're going embedded...... the Sega Dreamcast is the way to go.
It has a 200Mhz Hitachi SH-4 processor, 16MB of system RAM, 8MB of video RAM, a seperate ARM7 core (with 2MB ram) for audio,
... the list goes on. You can find a lot more info here and here.You didn't really specify in your post how big or small of a system you're looking to target, but for a small net appliance and/or hobbyist 2D/3D gfx fun, nothing out there (in my opinion) tops the DC.
In the US a base DC is now only $99, and the 10/100Mbit ethernet adapter ranges from $50-70, depending on where you find it (e.g. the cheapest would be eBay, but Sega also sells them). A keyboard and mouse will probably run you about $10-25 apiece.
Current OSes scrambling for exposure in the DC arena include:
Dan Potter's KallistiOS (the first native DC OS),
Our very own LinuxDC Project, and
There's even a port of RedHat's eCos underway!
M. R.
-
It will live forever..
Or close, anyway, as long as the developer community still supports it. Here's some screens from a near-perfect adaptation of gameboy tetris I've been working on, which I hope to make multiplayer once Dan's programming libs support networking.
-
Re:Dreamcast boot sectorYou don't follow the dcdev scene I take it.
That 'boot sector' your describing, called by most the IP.BIN, resides in the first 16 sectors (32k) of the first data session of the cd does NOT contain any specific information that Sega could consider 'copyrighted' Check here for more information about the 'boot sector'. There IS a checksum of the boot sector, however, but since we know the checksum routine, making our own boot sector is trivially easy. The checksum key is stored in the header itself, so just make that key match your header.
Secondly, the screen dump you should have just read, the one linked in the story, explicitly states that it was uploaded with the IP slave. The IP slave is a program written my Marcus Comstedt (get used to hearing that name a bunch. He should be considered the father of DC development in all of its forms, with heavy contributions from Dan P. and Andrew K. and a few others. You'll also notice Marcus' name as the main readon NetBSD works on the DC at all) that resides on a bootable CD. You turn the DC on, it loads the slave program from disc, and then you then upload the NetBSD binary(s) through the ethernet adaptor. The slave runs the program once the uploaded .elf is complete.
In others words, they can easily distribute the NetBSD files if they wish to without stepping on any of Sega's toes.
For those interesting in Dreamcast development, be sure to check out
Marcus' Site
Jules's site
Dan's site
For the best information available from people who KNOW, now people who post on Slashdot. -
John Byrd and Dreamcast DevelopmentAssuming it's the same guy and not an imposter...
John Byrd emails and reads the dc-dev mailing list (which I'm on) fairly regularly. The general consensus is that he's legit.
The archives of the list can be found here (not too up to date as Dan Potter, who runs that site, has yet to find a good solution to archiving the list).
For more on dc dev, see Jules' site, which is more or less a good hub site for everything dc dev related.
--Psi
Max, in America, it's customary to drive on the right.
-
Linux has run on the DC for awhile now
Linux runs on the Dreamcast with little changes at all. This guy has already got Linux working on the DC and is working on a custom OS.
-
Re:WorldForge on Indrema
...until the rest of the consoles drop the morally bankrupt licensing arrangements that developers have to conform to, we are not going to be able to release a Free Software MMORPG client that consumers will be able to use on their Playstation/Xbox/Gamecube.
How about Dreamcast? You can develop for Dreamcast without using any leaked or proprietary information at all -- just reverse-engineered stuff. Start here.
Note that there is currently a lot of homebrew Dreamcast development going on under Windows CE. As far as I can tell, this stuff is compiled using pirated devkits, and needs pirated WinCE runtime files in order to run -- as Free Software advocates, I'd expect you to reject these methods, even though it means some extra work reimplementing hardware-specific code.
I understand that NetBSD/SH3 is progressing well on Dreamcast. Perhaps that and a SVGAlib port would be enough to persuade me to get coding?
-- -
Subtitling software
I'm currently developing subtitling software for Linux and other Unix-alikes called BakaSub. You can find more info here on the main site. I know that's not video production at large, but it is a sizable segment of video editing.