Build your own game console...
Grudge

Hey guys,

I've been thinking about this for a while not. I'd actually be interested in building my own small game console. Something very basic, just a normal little circuit on which you can connect two controllers. Something to hold the games on (something like a game cartridge), and basically output it to the tv.

The reason I want to create this, is I think it would be cool to built something like this and program small games for it. Using the Peitz Philosophy (Better Gameplay, Low Graphics)...

Basically modify the allegro library (or create a addon) which will compile allegro programs into something that can be downloaded or ... onto the storing mechanism and then you can play it via the television.

Anybody game for this, anybody want to help out, or have any ideas or tips. (Open Allegro Game Console Project ? ). Maybe I'm way over my head with this idea, but I think it would be cool to try something like this.

What do you guys think ?

P.S - if you think this is the stupidest thing you've ever heard then please go easy ;)

Matthew Leverton

I think you're best off using standard PC components (mini-versions) and using a stripped down *nix operating system. A CD-ROM (could even burn to mini-CDs) would make the best data holder.

You could spend more time designing the case this way, and maybe come up with something cool. ;) People will never see the inside of it, after all.

madpenguin

It's not an entirely daft idea. I used to envision something similar, except this would be a full-on x86 computer in a very small form factor case, with a CD-ROM, forward-facing USB ports and TV-out, preferrably with some mid-range 3D hardware (I imagined a Riva TNT2-based setup).

It would boot Linux in single-user mode (I hadn't gotten as far as working out a boot medium yet, maybe flash rom), with drivers enough for USB joysticks, sound, accelerated 2D and 3D, then check the CD-ROM for a disc containing a game (there'd have to be some sort of script on the disc to let the machine know what to launch, similar to what the autorun.inf on a Windows CD does). If it found one, it'd launch it, otherwise, it'd check to see if it were an audio disc, a VCD, a CD full of MP3s, etc.

This would actually be an expensive configuration when compared with game consoles, but on the plus side, the tools for content authoring are either freely available or inexpensive, and do not require NDAs, publishing licence fees, or any of that other icky stuff.

I'm not sure how many people would go in for one of these unless it had some killer title that ran only on it, but it'd be neat to have. :) I'd buy one.

EDIT: I wrote this before I saw Matthew's post. Great (or, in my case, almost satisfactory) minds thinking alike?

Paul Pridham

I just saw something along these lines today, at Walmart. It is a Gamecube-like controller shaped battery operated game system, and it plugs into your T.V. via RCA cables! It has 10 games on it, and they have an NES look about them. I was rather amazed to see this thing, it seems like such a cool idea. The thing was only about $20 Canadian or so, too! Incredible.

Imagine this taken one step further, where it broadcasts its own low-power T.V. signal (pick it up on the bunny ears!). :D It would be the ultimate travel game for staying at motels and such. Anyway, I say go for it... clever, low-tech stuff like this is very cool and I'd love to see more of it. Gotta get my electronics workshop set up one of these days...

Flecko

Heh...this is great. I'm glad you brought this up grudge. I'm a computer engineering major, so naturally I deal with computers down to the tiniest hardware element.

Heres my take: If you want to use allegro and any set of standard tools, that means building of an x86 mini-computer.

If thats your route, I suggest the following. Get a mini-itx (eden)processor/case(See Mini-itx), a slimline cd/dvd drive, and all the other "standard" goodies you feel fit to throw in. Then you'd have to get a stripped linux distribution(maybe roll your own?), something that boots directly to X, and something that you can use to automatically start whatever allegro program is on the cd automatically. Say, give it standard name, and put the allegro dll on the cd, so that when new versions come out, you won't have to "upgrade" the console. You could even go as far as to have no hard drive and just make a linux distro that boots from the cd. And since this is a console, you'll want it to boot fast right?(less than 30 secs) So your answer for this is of course that linux bios project to put a kernel right on your bios(sorry, no url off hand)...that makes booting times nearly instant. The other hardware(ram, soundcard, videocard) would all be up to you of course, but consider it 'set in stone' once you put it in there. That way, it'll be more console-like.

This setup would be almost exactly what you need. So this hardware is all in place, and you could develop it fairly cheaply(as far as a computer can be considered cheap) and it would mean a rather short development/build time since its basically be a computer.

The other option is to build a "small" computer on your own using individual chips. Having recently build a 2mhz motorolla 68HC11 computer(with an arse spanking 32kRAM and 32kROM), I can say that this will be a bit more time consuming. Not to mention the fact that it has no VGA port, no form of standard output other than via the serial port on a PC, and has a very limited toolset available. Developing "custom" hardware like this is out of the question if you ask me. I've been working for about a week building a program that will utilize a VGA port and "turn on" the monitor, and let me tell you, its hard. Not to mention the fact that it has no true OS, so porting allegro is impossible.

So basically, a small clone PC is the way to go. If you're interested in building one, and making a "set" number of tools, I'd be happy to offer assistance. I gotta warn you, I have little to no knowledge of rolling up a linux distribution. It'd be cool though if we could "standardize" a set of components, and make the software available for download, to allow people to build their own AllegroCube(tm) ;D This way, with directions, everyone could participate. I'm sure it'd have limitations, but thats what makes it cool.

Please, lets keep this topic alive, as I've put alot of time and thought into it in the past. Let me know what everyone thinks, because I think grudge is onto something :D

UPDATE: Here's what you need to aim for.

-Flecko

Matthew Leverton

Silly question, but applicable, I suppose. How long does it take for a mini-linux distro to boot? I'd hate to wait a couple minutes to fire up the first game. :)

Flecko

I have no actual numbers to compare it to, but think about it. If you strip out all the extra crap that doesn't need to be there for a console(Printer stuff, server apps, net stuff maybe? and so on), it would probably boot about as fast as any other console. I mean...when you consider the logo showing up and doing its fun little animation on any modern console, then yes, the boot times would be comparable. The article above(roll your own..) has a quote saying 20 seconds...and even his linux has extra stuff in it. Plus, the LinuxBios project claims "between light switch and dial tone" boot speeds. Its also linked from the roll your own article.

Now I'm all excited.

EDIT: And on top of that, the AllegroCube(tm) would have a custom boot logo or animation as well ;D

PS, AllegroCube? Someone's gotta have a better name.

-Flecko

Thomas Fjellstrom

Well, If you put the distro together your self, and are sure you only have the stuff you need, then You could theoretically have a linux that boots in a few seconds... (10 maybe? less? mine boots up in 30 or so...)

Also, If you have a compatible motherboard, look at the Linux-BIOS project. It has a linux that replaces your bios. So that linux is booted in milli seconds. But normally, you have that linux boot up a larger version on the hard drive, but aparently, it's supposed to be much faster than some BIOSs. (like mine, with the lame A$$ Promise extention that takes 30 seconds to realize I don't have any hard drives pluged into that controller... :( )

Grudge

hmm, got better response than I thought I would.

Flecko : Thanks for all your ideas, i'm def going to bother you with alot of questions, etc.

So it basically comes down to this :

Need to build up a mini computer. Something small, yet effective. Something which will bootup quickly and without any hassles, definitely a Linux os.

Quote:

So your answer for this is of course that linux bios project to put a kernel right on your bios..

http://www.linuxbios.org/status/index.html

Something worth checking out. So basically create a mini linux distro with something like X running on it.

Quote:

but consider it 'set in stone' once you put it in there. That way, it'll be more console-like.

Anybody have any ideas for a low spec machine. We want to run linux on it, with an x server. The allegro games it should be able to run should be a low res (320x240 ?)

As for storage, what kind of storage devices do you guys think would work. Keep in mind that I want to keep the whole console (pc clone?) as small as possible.

Quote:

It'd be cool though if we could "standardize" a set of components, and make the software available for download, to allow people to build their own AllegroCube(tm)

This is exaclty what I had in mind. Please keep the ideas rolling...

EDIT : I'll start playing with creating a small as possible linux-distro running...

Flecko

Genius idea...man I'm smart. To avoid having to put an expensive hard drive in the console. Make a bootable mini-Linux distro on a cd, then put the game you want on the cd as well. This way, it could boot and run off the cd. There is plenty of room on a cd for a Linux distro and a big game(the roll your own article claims 450megs...and it has alot of fluff that can be trimmed.) This way, people that build their own have a 1-time download of the distribution, then just download a game, and add it in, burn a cd, and voila.

Just another idea.
-Flecko

Grudge
Quote:

Make a bootable mini-Linux distro on a cd, then put the game you want on the cd as well. This way, it could boot and run off the cd.

I'd rather have the mini pc boot on it's own (maybe using the LinuxBIOS project or something similar and then just letting it load up the x server and with a small interface used for loading the games from a cd ?

EDIT : Maybe boot the linux from an EPROM ?

Evert
Quote:

Anybody have any ideas for a low spec machine. We want to run linux on it, with an x server. The allegro games it should be able to run should be a low res (320x240 ?)

Why do you want to run an X server? You should be fine in console mode, especially if there is a FreeBE/AF driver available (is that project still alive, btw?).
I've never seen X run in something as low as 320x240 (which isn't a standard VGA resolution, btw), but you could probably get away with 640x480 as well.

As for OS - Linux obviously rules, but maybe DOS would be a viable alternative for such a system as well?

This idea sounds cool:)
If something does come out of this, I'd like to have an Allegro Entertainment System.

Thomas Fjellstrom

If you have the choice, Use allegro on SVGALIB or fbcon as one should have accell for decent cards.

Grudge
Quote:

Why do you want to run an X server? You should be fine in console mode, especially if there is a FreeBE/AF driver available (is that project still alive, btw?).

Well to tell you the truth, I've only been able to run allegro games via X, but your right getting it to work directly from the console would be nice (using FreeBE/AF, SVGALIB or fbcon). Does allegro work with these 3 graphic libraries, anybody using it like this ?

[EDIT]
Just checked the docs, allegro uses it ;D
We could prob use alsa for the sound ?
[/EDIT]

Quote:

I've never seen X run in something as low as 320x240 (which isn't a standard VGA resolution, btw), but you could probably get away with 640x480 as well.

Basically we need to decide on a resolution and keep it like that. Any suggestions ?

Quote:

As for OS - Linux obviously rules, but maybe DOS would be a viable alternative for such a system as well?

hmm, the problem with dos is

1) I don't like it (i like Linux !)
2) Free ? Licence issues ?
3) Did I mention I like Linux ? ;)

Seriously, any good reasons not use Linux ?

Kitty Cat

Linux will have processing overhead... not nearly as bad as windows, obviously, but DOS isn't multitasking, so your program will get the CPU's full attention. As for licensing issues, I dunno but I've heard about FreeDOS.. never looked into it though. and with DOS, you wouldn't really get all that much hardware acceleration.

But it really depends on what hardware you're gonna use. I like the idea of games being able to run in high or low resolution... being able to switch between 320x240(or 320x200?) and 640x480 has always sounded like a nice option, although depending on how powerful the system will be, it may not need 320x240. Most VESA compatible video cards I've toyed with can handle 320x240. Then there's also Mode-X and 640x400...

Evert

Note that I said DOS - not MS-DOS ;) You could use FreeDOS, which is, well, free.
I agree, I like Linux - but I love DOS ;D
DOS is more lightweight than Linux and it can brobably be made to boot fast more easily. You also aren't going to need the extra power and versatility Linux has to offer.
You might also want to consider the following: DOS by itself uses almost no memory - Linux, especially if you run X, will use more. You'd want to cut the amount of memory used by things other than the game to a minimum.

Not that I'm opposed to using Linux in any way - just pointing out an alternative ;)

EDIT

Quote:

with DOS, you wouldn't really get all that much hardware acceleration.

This has nothing to do with DOS - it has to do with the video drivers. The aforementioned FreeBE/AF project has (had?) hardware accelerated drivers for DOS.

Quote:

Then there's also Mode-X and 640x400...

640x400 is not a standard SVGA mode (though Allegro has something called a DOS driver that can set it regardless of VESA, IIRC). 320x240 on the standard VGA required some tweaking similar to ModeX to set up, I think, but it may be standard with some VESA implementations nowadays. It'd still say to go for 640x480, though - it's probably supported best.

Grudge
Quote:

But it really depends on what hardware you're gonna use. I like the idea of games being able to run in high or low resolution... being able to switch between 320x240(or 320x200?) and 640x480 has always sounded like a nice option, although depending on how powerful the system will be, it may not need 320x240.

True, but I'm trying to build a system which is a cheap as possible and on which low-res games (such as Johan Peitz's HappyLand Adventures) will run nicely. Basically what I'm trying to say is that I'm not trying to build another ps2 or gamecube. I like to whole old games (low-res) idea, like those you found in the old game arcades...

Quote:

Note that I said DOS - not MS-DOS You could use FreeDOS, which is, well, free.
I agree, I like Linux - but I love DOS
DOS is more lightweight than Linux and it can brobably be made to boot fast more easily. You also aren't going to need the extra power and versatility Linux has to offer.

Sorry, misunderstood you there :-[

How does allegro & allegro games run on FreeDOS ?

Johnny13
Quote:

I'm not trying to build another ps2 or gamecube. I like to whole old games(low-res)idea

then Why reinvent the GBA?;):P

Thomas Fjellstrom

I like the idea... Though linux appeals to me muchly more than DOS :). YOu need to make sure that all the hardware is supported in that DOS system.. In linux, plugin a SBLive or Audigy (or a Turtle Beach card) and it'll work. just something to think about :)

Grudge
Quote:

In linux, plugin a SBLive or Audigy (or a Turtle Beach card) and it'll work. just something to think about ...

Good Point ...

Personally I'm doing this, because I think it would be fun to create something like this, playing al those cool Allegro games on the tv, and because the machine will have certain limitations it could be interesting to see what games could be developed for it...

Trezker

I've fastread through the thread. Didn't read it carefully, just tried to see what's been discussed, now I speak my heart.

First, I want it to have a nice name. (This might already be decided, I not know)
My suggestion is Alix, a TV console using allegro on a *nix OS.

Graphics, 640*480*b, don't know what depth, but I'd like to avoid 8bit.

I must say this project is something I like. If this thing can be ordered for a fair price sometime in the future, I'd like to buy one.

There should be a howto on making an Alix "cartridge - or whatever it loads". I hope many games will be ported to it, and I'd like to see my Miffonoid on it if I ever finish it, it'd be perfect.

I thought I had more to say, but it seems to have escaped me. I'll be back if I have more to say.

May the hardware be with you.

Grudge

I'm thinking of getting a very small linux up and running, with just enough to use my hardware (graphics and sound). I'll also try to get the allegro running (using SVGALIB or fbcon).

I'll keep you guys informed of how it's going. Please keep the ideas coming...

Quote:

My suggestion is Alix, a TV console using allegro on a *nix OS.

I like it ! Any other suggestions ?

DanTheKat
Quote:

I like to whole old games (low-res) idea, like those you found in the old game arcades...

Then MAKE SURE you have that awful 320x240 (or 320x200) and 8bit color support. If you guys can write 20 line games, and write whole games in just a few hours, then surely you can write a game with a measely few graphics adjustments and some palette adjustments.

Trezker

Maybe you could make it able to run a few different modes. Like 320*200 or 640*480 in 8bit and another colordepth, this ofcourse selected by the game.

So the programmer can choose to do a game with horrible gfx, or something soft and cuddly.

spellcaster

Hm, Have done this already :)
I used a Siemens Multitainer (celeron 1Ghz, 256MB, 40gig Hd) as a base, connected a multijoy psx joypad adaptor so I can play with 4 pads.
Used a light version of windows 98 as OS (takes around 5secs to boot) and coded some small menus (gaming, emulators, dvd ripping, dvd / vcd display)
I'm considering to buy a geforce4mx PCI (the board only has PCI, no AGP) so I can play some more up-to-date games as well.

All emulators run nicely (mame, zsnes, epsx, c64s) and with some small utils everything works really smoothly (I wrote a small util to change the output adjustment after a resolution change, for example).

You can build a box like this for around 300€, maybe less.

JaTeR
Quote:

I like to whole old games (low-res) idea, like those you found in the old game arcades...

if thats what you want. go with what DTK said.. 320x240x8. there is no need for more. and all you would specifically need for a graphics card is one that can do TV-out.

I think whichever os you decide to put on, make sure that it is loaded into BIOS so that it boots "instantly".. one thing that DOS may not be able to handle.. auto booting cd's? how would that work?
and would you just allow USB joysticks? nothing else? possibly have at least a small harddrive (flash rom mebbe?) for drivers.. if you could install drivers for your lovely SuperDuper Wingman 29XL586062200000 SuperExtreme.. (which isn't naturally supported.. of course) then that would add a lot.

hows this for a case?;D

my 2 cents are free.. here are my 10 cents.
JaTeR

Grudge
Quote:

I think whichever os you decide to put on, make sure that it is loaded into BIOS so that it boots "instantly"..

(flash rom mebbe?)

Something I'm looking into, wouldn't mind getting something like this working. Anybody worked with this before ?

As for controllers I haven't really thought to much about that. The keyboard would ofcourse work, but I think it'd be way cooler to use game controllers or something like that. I got this very old tv games set, uses 8 bit color game cartridges. The controllers fit very nicely into a serial port. I wonder if I can get them to work ?

The case looks cool !!

EDIT : got allegro working with fbcon and svgalib, guess I won't need X anymore. ;D

X-G

About leaving out the HD - What if someone makes an RPG? You would then obviously want save games - and then there could be things like highscore tables, etc, so some sort of writeable medium would be desired, no?

Grudge
Quote:

About leaving out the HD - What if someone makes an RPG? You would then obviously want save games

hmm, didn't think about this. Anybody have some ideas ?

EDIT :
With fbcon, the kernel displays a tux or gentoo logo. It's easy enough to change that logo, but how would you go about to do something like Mandrake is doing with their bootup ? You know, display a full screen pic ?

Trezker

How about saving on floppy :) No?
Memory sticks, such as those in digital cameras maybe.

I was struck by the idea of making a kind of modern c64. A keyboard with builtin computer. And some ports on the side and back.

You could make an allegro gamemaker machine.

Grudge
Quote:

You could make an allegro gamemaker machine.

What do you mean ?

spellcaster

Memory Sticks are too expansive. But SD Cards are pretty cheap and can store enough informations.

Regarding cases: shuttle cases are sweet. You can also use a PS1 casing :) A friend of mine did that, the only problem he had were the capacitors of the onboard sound.

And what you'll mainly need is a good motherboard with all needed components on board. Maybe a nforce2 board? I'm pretty sure I saw some of those with tv out. All you need then is an SD Card reader (for "memory cards") and a CD Rom drive.
Then you have all the HW needed (if you boot from CD).

Trezker

A console on which you can make the games as well as play them. Those aren't common these days.

But I think it's a bad idea, it would probably require some HD, and some media to store the project on, a floppy wont be enough for a big game. Methinks I'd rather develop the game on a regular comp.

But it might be nice with support for mouse and keyboard.

spellcaster

Hm.. depends. Provide a game maker app on CD. Save the result on the memory card.
Hm... You could use a 2nd card (internally) to store the OS. Then you could even run the games directly from the memory card.

Grudge
Quote:

A console on which you can make the games as well as play them. Those aren't common these days.

...

Hm.. depends. Provide a game maker app on CD.

Not such a bad idea, I mean seeing as you are using Linux, you can create a development environment, with the allegro libraries and maybe some kind of editors and other tools (image editors, etc)...

Memory cards ... something to look into, but aren't they a bit expensive ?

Trezker

We had Commodore 64 and Commodore 128.
Now we present Allegro 64, bigger, better, it's the perfect solution for the average Allegro programmer, call 666-ALLEGRO and order Allegro 64 ,a mean machine of the 21st century!

Hmm, maybe it wasn't such a bad idea, spellcaster makes everything seem so easy.

You should be able to burn your finished game onto whatever the machine will load a game from.

Evert
Quote:

some media to store the project on, a floppy wont be enough for a big game.

Casette tape!!!! ;D

Sorry, I just had to. :P

Trezker

Woo, yes, ye old cassette tape, super.
Takes forever to read and write. And how much did it store in the old days.
With the old technology it would be better to use floppys, but I think it might be possible to store a couple of gigs on a tape, but that tech is probably expensive.

X-G

http://www.lart.tudelft.nl/

Can we steal^H^H^H^H^Hget any ideas from that? :)
Does Allegro run on ARM CPUs?

spellcaster
Quote:

Memory cards ... something to look into, but aren't they a bit expensive ?

Depends.
Compact Flash cards cost around 25bucks for 64MB. This should be enough for to store progress for game s or even to store several games on it.
If you want to store your OS on it, you'll either need a 128MB card (45$) or 256MB (85$).
I guess you could also provide a "run from compact flash" cd rom, which will simply boot and display the contents of the memory card.
But having some internal storage is IMO way better than depending on the OS to be on CD.

You could also consider to use zip drives as a medium, but I guess this won't be less expansive than the Compact Flash cards.

Flecko

Allegro doesn't run on ARM processors. If it did, we could just use the Dreamcast instead of building a console. And as for the built-in editor functionality, shouldn't we just keep this simple until it actually works? I think editing on the console is somewhat stupid considering everyone that has posted here has a capable PC to edit on.

As for resolution, I'm all for 320x240xlow, but I really really would like to see 640x480,high support, because sometimes you just want your games to look pretty. Also, dropping X would most definitely decrease boot times....can't believe I didn't think of that before. ;D

keep the ideas rolling!
-Flecko

Grudge
Quote:

editor functionality, shouldn't we just keep this simple until it actually works?

I agree, first things first. I'm busy with the distribution, playing around with some of the stuff. Anybody know how to create a bootable linux cd ?

need some more ideas on the hardware side

Any ideas on what specs we need to set for the console ?

X-G

You should be able to get a Mini-ITX mobo with integrated CPU (somewhere around 600-800 MHz - which might be overkill, actually), graphics card with TV Out, soundcard, NIC, USB ports et cetera for about $110 USD. A worthy candidate, perhaps?

madpenguin

That is a cool case. Be aware, though, that if you do go ahead with this project, the VIA cpus a lot of mini-itx boards have aren't socketed, and have terrible floating point performance. I was thinking of something more along the lines of Shuttle's machines, most notably the SV-25 or the XPC (this is an SV-25, haven't found an XPC image yet).

Flecko said:

I really really would like to see 640x480,high support

Agreed. I know most people are kind of leaning towards a machine that is capable of producing SNES-esque graphics and many Allegro games need no more than that, but some of us will want high-res with at least 16-bit colour to be available (in particular, my current `sekrit projakt' will really look its best with accelerated 3D). I'm well aware this drives the cost up, but seeing as how this would be specs for a 'build your own' project, rather than something that we plan to manufacture (or is it?), it makes sense to not limit it to just low-end 2D, and if that's all a potential user wants, s/he can build it with a lower-end card.

Incidentally, I was leafing across the web, and I happened upon this article. This isn't exactly like what you guys want to do, but it's similar in concept, and the writer got it to run, so it'd definitely be doable.

Quote:

PS, AllegroCube? Someone's gotta have a better name.

As for a catchy name, why not HyperDrive (if it's not already taken)?

X-G

Wow. That thing looks awesome for the Alix (I like that name ;)). Might definitely be worth having a look at.

[Edit: this doesn't look all too shabby, either. We will DEFINITELY want front USB ports, to connect gamepads to.]

Grudge
Quote:

but seeing as how this would be specs for a 'build your own' project, rather than something that we plan to manufacture (or is it?), it makes sense to not limit it to just low-end 2D, and if that's all a potential user wants, s/he can build it with a lower-end card.

True, the console will only be limited by the game and the hardware, but if we can setup a standard low-spec machine then the 'console-builder' knows that

a) he doesn't need to be more expensive hardware to get it running
b) he shouldn't go lower than this 'spec' or he runs the risk of it not working.

Quote:

but seeing as how this would be specs for a 'build your own' project, rather than something that we plan to manufacture (or is it?), it makes sense to not limit it to just low-end 2D, and if that's all a potential user wants, s/he can build it with a lower-end card.

Def something we can start with, i'm busy checking it out now.

Flecko

Well, this is turning out sweet. As for motherboard/case style, I vote we go Mini-ITX because it its smaller than Shuttles design, and has a great deal of cooler cases than the 1 or 2 that shuttle offers. Even though the FPU performance is pretty bad, how many allegro games are in 3d? I mean, short of a 3d game, there aren't enough FPU operations in most games to cause a noticeable slowdown. I mean...think back to the AMD K6 era. I think we'll be fine with a Mini-ITX solution. Also, you can get Mini-ITX setups that run TOTALLY silent. I prefer my game consoles to be quiet other than the occasional cdrom access.

As for memory storage(save games,etc), I say we go with Floppy disks. I know its incredibly low-tech, and somewhat outdated. But think of cost. Cost is primary in consoles. I mean, no one wants to buy a console to play old school games that costs 500 bucks.

Also, a thought came up that can you enable TV-out without X under linux? I never had a tv-card when I used commandline linux.

Just a few more thoughts. Keep the feedback rolling.
-Flecko

X-G

Memory storage ... why not let the user choose? Can't we simply auto-detect if a memory stick is available, and then use a simple soft link somewhere to set the currently active storage medium?

Grudge
Quote:

I vote we go Mini-ITX because it its smaller than Shuttles design,

I think for a case it's up to the user, I live in South Africa and I shudder to think how I'm going to get one these cases (Mini-ITX) without paying through my a shitload of money...

As for storage, fd will work for a start and I also think that X-G makes a very valid point....

spellcaster

I disagree.
The main problem with PCs today is that you can never know what you get :)
A console should behave the same everywhere. I mean, assume that you could have slower or faster PS1. Some might have more memory. Some less. Some might be able to do 320x240x16. Some don't.
Some may have a 10 button joypad. Some others' won't. And even if you have a 10button pad... the layout of the buttons may vary from pad to pad.
Now that's no fun to code for.

The EPIA boards with a C3 seem to be a pretty good solution.
Regarding the "memory cards"... Yep, I guess a 3.5" floppy will do the trick. But I still think that the OS should be loaded from (Flash) ROM or a flash card.

Flecko

I think, spellcaster, that is why we need to have a minimum set of specs for the Alix(I like this name.) Say, if you plan on building your own, it must have an XXXmhz CPU, and XXmegs of RAM in order for all the games to run on it. If someone wanted to define a spec for the Alix+(say a version that had OpenGL support for 3d games), then that'd be another project. But I think for the time being, the idea is to shoot for a lowest common denominator.

I'd say Grudge, since you started this thread, you should have the go on what is the lowest set to shoot for. Say minimum 500mhz C3 processor, minimum 6 button digital d-pad USB controller, etc. The whole idea here is to have a set of standards, without that, the project falls apart. If someone builds a faster version, then it more than meets the standards, and thats fine. This way, we can have a set goal to target for our programs. (Also, no cheating and relying on Vsync like other consoles...keep everything timer based.)

As for getting a mini-itx system/case, Mini-ITX.com isn't the only retailer. Its just a nice source. Pricewatch has all the Mini-ITX stuff you need. As a resident of the states, I can't say about where you live grudge, but I'm sure something can be worked out.

And btw, that Linux-game cd link was great! keep the ideas coming.

UPDATE: I found an online site where you can get a mini-itx board w/ 533mhz processor for 90 bucks. Thats cheap as all getout. I plan on building my own "retro" case out of stuff I buy locally, and I have all the other parts I need lying around. Just takes some diggin, thats all ;D
-Flecko

spellcaster
Quote:

f someone builds a faster version, then it more than meets the standards, and thats fine.

No, it isn't. The idea of a standard is that it's followed :)
If we allow the "or more" part, some games will use it. Which is not a good idea, since it won't run ok on "normal" boxes.
If yuu have an "Alix" it should be the same everybody else has. The "or more" syndrome has killed other consoles before.

Quote:

(Also, no cheating and relying on Vsync like other consoles...keep everything timer based.

Why not?
Also, keep in mind the NTSC / PAL conversion problem :)

Also, just "a 6 button" joypad won't do the trick.
6 Button could be 4 action buttons + start / mode. Think a snes pad without the shoulders.
It could also be a 3x3 button layout (think sidewinder without start/mode and shoulder).

I think we should use one of free availabe pcx -> pc converter descriptions, and use psx pads.

Flecko

The no relying on Vsnc comment was made in DIRECT relation to the NTSC/PAL problem. When they released Halo in the US and Europe, players from different sides of the pond couldn't play multiplayer because the people at Bungie relied on Vsync timing rather than timers or something more reasonable.

And I think my point was a bit misconstrued. I meant, lets build the Alix as we are now with a set specification. Then, later on, if another group wants an Alix+ for 3d games or something, thats their deal. I think at least ;D

-Flecko

gnolam

Must've been a bummer for the French, since they're the only ones (that I know of at least) that use SECAM :)

What's up with all this 320x240 BTW? Good ol' 320x200 not good enough for ya? ;)

Korval
Quote:

he doesn't need to be more expensive hardware to get it running

Expensive hardware? I bet you can't actually buy (from a store) a graphics card that can't reach 800x600x32bit. Even those crappy chips that come on motherboards can handle that. What I got with my Pentium I 75MHz could handle 800x600x16bit.

Quote:

I think we should use one of free availabe pcx -> pc converter descriptions, and use psx pads.

First off, as I have recently rediscovered, there is no 2D pad better than the SNES pad. If I want to play retro games, I'm using that and nothing else.

Secondly, ignoring the first part, you need to make sure that the converter you decide on works well. I picked up a KikiJoy, and it was terrible. It sampled at something like 15 samples per second, which is unacceptable for virtually any game. I've seen people with better converters (but then I got a converter for my SNES pads and I never went back ;) ).

In any case, I don't really understand why you all want to do this. There are, for all intents and purposes, 2 things that differentiate consoles from PC:

1: Most consoles (and all of the ones you're trying to emulate) provide direct access to hardware.

2: All consoles of a given type (SNES, Genesis, etc) use the same hardware.

The thing is, this project can't make #1 happen, because it's based on Allegro. You're stripping the user of the right to touch the hardware directly, since you're relying on Allegro (and whatever Allegro uses underneath) to touch the hardware for you.

#2 is made moot by this being a "build-you-own" console project. Since none of the features of most of the hardware won't really be used (3D graphics, high-end sound, etc), they won't behave too differently. However, there is no guarentee that functions won't be slightly different on any particular console.

However, users of Allegro on the PC already have this advantage of consoles. They make Allegro calls; for all intents and purposes, these work everywhere. If they don't, it's an Allegro (or lower-level) bug.

spellcaster
Quote:

First off, as I have recently rediscovered, there is no 2D pad better than the SNES pad. If I want to play retro games, I'm using that and nothing else.

Agreed. And the psx pads are mainly SNES pads with 2 extra shoulder buttons and a better design.
The difference is that you can buy PSX controllers very cheap, you can also get Arcade controllers, dance maps, etc.
So, for home brewn games / consoles the psx controllers kicks major donkey.

Flecko

Confusing post Korval. Are you saying this isn't possible because it doesn't work like old school consoles internally? EG, you don't use direct machine calls such as putting stuff in video memory by hand, messing with registers and so on?

I know for a fact that the XBox doesn't do this. Its a console built on high level language concepts, and a minimal OS that runs from a EEPROM chip. Programers don't get to "touch hardware directly" unless they plan on doing some ASM.

If we get a "standard set of parts and software" list put together for this, and everyone that makes games for it using the same list, then how will it not be the same speed?

Also, as for the issue of game pads. The reason why I said "minimum number of buttons" is so that this is more open to the end user. I mean, I personally hate the PSX pads. But if we specify that you have to have X buttons and an 8-way digital D-pad, the the user can use any controller that meets these minimum specs. If they want a 10-button pad, then that'll be up to them.

Good discussion so far.

EDIT: And btw, I'm sure yes, that you can only buy cards that go up to very high resolutions, but the idea here is that you need a TV compatible resolution(I think tv's go up to 800x600 in some cases right?), and that performance is hampered the higher you set the resolution, especially considering that we're going to be using the on-board video from the mini-itx if Grudge thinks thats a wise solution. So thats why the resolution limit needs to be set.
-Flecko

madpenguin

For my part (and apologies if I'm beating a dead horse, I'll stop asking for the moon after this), I think that, if we do this, even with no 3D games, we're seriously going to miss good floating-point performance. In addition to 3D, it also has its uses 2D special effects and in sound synthesis and could potentially hobble (or require significant modifications to) things like modplayers, reverb tricks, etc (normal consoles usually have special hardware built in for this sort of thing, which explains why they can get away without FPUs). Lookup tables are doable for some stuff, but if high accuracy is needed, LUTs growing very large seems like it'd be problematic, as the cost of indexing through a really large table would be an order of magnitude slower than doing the calculations on an FP-capable CPU of similar clock speed (it should be noted that this is entirely speculation and I don't have a ViA machine to try it out on).

But yeah, this is starting to sound like it'd rule. I especially liked the idea of using PSX controllers.

I assume there'd also be human interface guidelines?

spellcaster
Quote:

I assume there'd also be human interface guidelines?

Just the normal ones if dealing with TVs.
Don't use color components less then 20 or higher than 250.
Don't use 1 pixel wide lines.
Make sure you have a 10% security zone at the borders (ie. don't place any important stuff here).

And of course the normal set of of guidelines :)

Hm. I think we should require a screen showing the pad config to get the "Alix sigil of approval".

If self built psx adaptors are a problem, then we should use commercial converters. I have a 4 psx -> gameport adaptor that works like a charm.

Matthew Leverton
Korval said:

In any case, I don't really understand why you all want to do this. There are, for all intents and purposes, 2 things that differentiate consoles from PC:

Both are valid points and so is the conclusion itself to some degree. However, I think that playing games on something that feels a console is much nicer than on a PC. For example, I use the dreamcast (via an emulator) to play NES games. I could very well play them on my PC, but I think sitting in front of a TV, plopping in a CD, turning on the system, and holding a real controller is more enjoyable.

So basically, something like an "allegro console" (for lack of a better term) is really about creating a budget PC that feels and acts like a console. In other words, it's a console from the gamer's point of view - not the programmers.

nonnus29

The only thing I have to contribute (and to reiterate SC's example) is the simple fact that its almost impossible to find new low end hardware. Is it even possible to buy a (EDIT:) new pentium 3 chip anymore? Low end gfx cards are non existant as Korval noted any new mother board these days can handle 800x600x32. So basically people would be assembling a second computer which most likely be more powerful than there old one.

Now what would be fun would be scrounging used computer stores for old hard ware. I recently spent an afternoon scrounging thru this shop that had alot of 'old' hardware (P 133 and faster processors was the slowest I saw) and some 500 MB harddrives. Heh, I threw away a 386 SX a couple of weeks ago. So maybe a "scavenger hunt build your own game console" would be part of the fun.

Flecko said that making your own hardware via a processor like the 68HC11 (Why is there not a C compiler for that thing? As many comp sci students that are using it in emulators to learn digital logic I would think there would be at least one compiler out there for it.... IIRC the first c compilers ran on 4k of ram) would be very difficult. Thats why all the old consoles (and computers) had custom chipsets for gfx and sound. The Commodore 64 SID chip was a miraculous device.

To me this idea sounds really novel and cool at first, but it fades the more I think about.

Just my two cents.

Flecko

nonnus29: the 68hc11 does in fact have a C compiler. Actually, more than one to my knowledge. I even believe there is an alpha of GCC available. But my main point with the hc11 is that its impractical for most people to build. It took me 3 days of wiring to get it all connected, then another few days of debugging before it even worked. And who wants a computer that costs nearly 70 dollars that has such crappy specs? The HC11 is just a learning tool in reality.

-Flecko

MiquelFire

I was thinking about something. If work on this does happen, then here's something I think you should do:
As far as booting goes, make the OS in the BOIS (and have Allegro on the CD or whatever the game runs off of)
The OS does this: Check to see if there is a CD, if so, check to see if it's a "game" CD (decide on if there's a "boot" file the CD must have)
If it's not a game CD, check if it's a supported Media CD (like Audio CD, MP3 CD, VCD, etc.) based on what players are built into the OS (like how PS, PS2, and Xbox works)
And if there is no CD, open a built in Menu type thing (for memory management, clock adjust, stuff like that)
Of course, how much you can put into the built in OS depends though on how much space you have and what not.

Korval
Quote:

So basically, something like an "allegro console" (for lack of a better term) is really about creating a budget PC that feels and acts like a console. In other words, it's a console from the gamer's point of view - not the programmers.

So, what you're really wanting is a PC with a TV-out cable that has an SNES pad connected to it. Like mine ;)

Most mid-to-high-end video cards comes with TV-out these days.

Quote:

I know for a fact that the XBox doesn't do this. Its a console built on high level language concepts, and a minimal OS that runs from a EEPROM chip. Programers don't get to "touch hardware directly" unless they plan on doing some ASM.

True. But older consoles (SNES, Genesis, ie, the stuff that this console is trying to represent) did require direct hardware access. The point I was making is that one of the "charms" of programming things like the SNES and the GBA is that they offer direct hardware access. If you take that away, there's little difference between making games for it and a PC.

My main question is this: you're PC programmers. Do you know how lucky you are to have resolutions greater than 640x480? Do you know how lucky you are to make fonts that don't take up half the screen, but are still legible? These are good things that should not be discarded so easily.

There is something to be said for playing the older games on a TV with a controller. That's why ATi and nVidia gave us cards with TV-out capabilities, and that's why we were given PS2-PC and SNES-PC converters. What is the particular need that this console would fulfill?

Matthew Leverton
Quote:

So, what you're really wanting is a PC with a TV-out cable that has an SNES pad connected to it.

Yes, but I suppose I really cannot answer for anyone else.

Having it in a cool case, along with an OS geared for booting games (movies, audio, etc) makes it more of a novelty. Truly a geek thing, is how I would view it.

nonnus29
Quote:

What is the particular need that this console would fulfill?

Sit on your couch with a nice little controller and play games on your 27" (or bigger) t.v. ?

:P

phate

Flecko, Grudge, Anyone else:

are you guys actually going to go through
with this or are you just dreaming?

well I know I am. (I have actually been
working on it for a while. if you would
note in my sig the (not-quite)link for
NeoCon. Neo = not really + Con = Console)

great ideas thou. Anyone care if is use the
name Alix?

I will have a design draft up soon.

23yrold3yrold

Geez Korval, you're no fun :P

Whatever you call it, let's not call it the Phantom ;) I would care, but I still have hopes for getting this Dreamcast programming working one day ...

Grudge
Quote:

are you guys actually going to go through
with this or are you just dreaming?

Nope this is def. going to happen. I've been thinking about this for a long time and with all these great ideas that everybody has thrown out, it might actually work. So what do we know so far.

Basically we have figured out that we'll have to create a clone pc. ie, use parts of a pc to build the console. We will have to set a certain set of standard components so that anybody else can build their console like this. Most people recommend the mini-itx case and while I think it's a very cool case we need to keep in mind about availability. I'm not sure (will find out today), but I don't think you can get those cases locally in South Africa, so personally I think the case depends on the user. The user can be creative and build just about any type of case (wood, metal) whatever the person fancies.

As for display it is clear that we need to use something with a tv out. We have to keep in mind that the resolution on a tv can't be more 800x600. So I think it'd be a good assumption to say that we can create our console using the resolutions 320x240(200 ?) and 640x480, not sure about any colordepths yet. For sound any basic sound card will do. Any ideas for the speed of the processor ?

Operating System : I'm busy setting up a very basic operating system config (linux), which will have the basics included to get the games running. I'll also start work on some kind of interface for which the console will run from (anybody want to design some cool logo's ?)

Finally the boot medium, I like the whole boot from a bios or boot from flash idea, because it will let the 'console' boot alot faster that way. But I seriously have no idea to implement that or the try something like that (Fleck, I'll prob need your help on that one). I think for starters we'll just go with a linux bootcd which loads the kernel and interface in a ramdrive and then the games can be run from a cd, and saved games can be saved to a disk.

Keep the ideas rolling, let me know what you think of what we got sofar..

Flecko

Umm...just needed to post this because I'm not sure you get the mini-itx thing yet Grudge. Mini-itx mainboards ALL have built in VGA and tv out/sound/usb/lan/etc. And they are a VERY small form factor. Its not just about cases, but the board itself. Even the CPU is socketed on there and can't be removed. All this helps cut down on cost, like I said before, they're very cheap. The reason why I put my vote for the mini-itx solution is because its got basically everything needed except for a cd-drive and RAM.

Try maybe reading a tad more at mini-itx.com. In case you did get what I meant, than I really apologize. I always read all the links in the thread is all. That linux-game on a cd link is great. It shows step-by-step how to build a lean-mean linux distro that boots from a cd.

As for getting a bios-boot thing setup, I'm not sure on that one. I have acces to an EEPROM burner, but I know very little about how an x86 bios works. The one I burnt for my hc11 board is very very simple.

I'll look into it though. Worst case senario, the boot times are a tad longer...maybe 20 secs?

And btw, I'm definitely building one of these once we have specs. Even if no one else follows grudge's ideas, I've wanted to do it for awhile as well. Plus, nothing beats playing games on the TV. Ask 23yrold about it...consoles are just different. This solution would give us a super nice dev solution rather than mucking around with the dreamcast dev kit, as Chris pointed out.

All in all, I'm very psyked. Lets keep things rolling.

EDIT: Read this...
..and this for what I mean Grudge.

-Flecko

Grudge
Quote:

Try maybe reading a tad more at mini-itx.com. In case you did get what I meant, than I really apologize.

I do understand what you mean, but what I am trying to say is that it's going to be a tad difficult for me to get one of those. Firstly, I can prob order one online, but I don't know in what condition it's going to get to me. Secondly I'm still a student (all my money from my job goes to my car payments) and it's going to cost me a bit to get one of those boards, although I'd love to get one of those and the build the console. All I'm trying to say is that we also have to consider the people who can't get a hold of something like that and rather build their own machine from old pc parts. If anybody wants to buy one of those for me, then please by all means, hehe ;)

But I agree, those boards would be the ideal setup, it has everything on board and it's nice and small.

I'm still busy with the bootcd, could still take some time. But as soon as it's ready I'll upload it so that you guys can check it out so long and play around with it. I'll also get a website up and running...

spellcaster

I'm pretty sure you can get them in SA. While I was there coding stuff at a Security Cam producer, they just got some ITX boards to use for their camera controller.
I'm not sure if they ordered it from a company inside SA or imported it, but they got a few for sure :)

Grudge

I phoned around, and the only way to get them is to buy them online and order them like that. But with our currency being so low against the dollar, it's going to work out a bit expensive. If I am going to order one online, does anybody know where I can it the cheapest ?

phate

just solved the boot problem
(for me at least)

[url http://store.yahoo.com/ituner/micoflidead.html]

Grudge

Nice, might be just what we're looking for. You have any more specs on it ?

Flecko

So wait, you can buy one of those, put your minimal linux distro on a big CF card, and have the boot times be sped up by this? That's a pretty sweet proposition. Not sure how that'll be sweet in terms of cost because the adapter is 30 bones, plus buying a reasonably large CF card I'll assume.

Interesting to say the least.

EDIT: Oh btw, I didn't think to mention this before, but can you use Ebay Tom? I mean, someone is probably willing to ship it to you at cost. Or if not that, is there an equivalent that is local to your region? That way you could save on shipping costs.

-Flecko

phate

Grudge: not really
I did google for more and I found a bunch
what I found so far

Transparent to operating system
No drivers required looks just like a small hard drive
Minimal power consumption
Shock resistant
Board size identical to a 2.5" disk drive
Master/slave jumper
Powered through 44pin IDE cable
This adapter does not support hot insertion of cards. This adapter is not recommended to attach a CompactFlash device to the development system. CompactFlash card is not included.

Flecko:

I have an internal IDE card reader nad have gotten
zipslack to boot off of my 64MB CF card and my
128MB Memorystick

Is a MicroDrive compatible w/ CF? I heard they
were insome cases but not always

Mars
phate said:

Is a MicroDrive compatible w/ CF? I heard they
were insome cases but not always

There are two types of CompactFlash. Type 2 is made for slightly higher cards than type 1. Type 1 cards work in type 2 drives, but not vice versa. Because they had to fit a whole harddrive into it, microdrives are for type 2 slots. I don't know of any other problems.

Grudge
Quote:

Oh btw, I didn't think to mention this before, but can you use Ebay Tom? I mean, someone is probably willing to ship it to you ...

Yeah, I can use ebay but then it comes down to the same thing doesn't it. Still need to pay big amount of money online and shipping costs ?

Quote:

Or if not that, is there an equivalent that is local to your region?

Equivalent to the mini-itx ? nope, I checked, couldn't find anything. But I'll still make a plan,
:)

Moving along : I think using the mini-itx would work very nicely. What board do you guys recommend ? Then we need some ram, a cd-rom drive and then we could also look into the adapter and cf card. What else do we need ? Some game controllers !! anybody got any ideas on which ones we are going to use ?

phate

I say we set the standard for an 8-way dpad
and 8 buttons. SNES (Super Famicon) pad of sorts.

well thats what I am using for my standard

spellcaster

phate, where do you get snes pads?

phate

I didn't mean actual SNES pads but what the
button config would look like

dpad

1 start
2 select
3 A
4 B
5 C
6 D
7 L shoulder
8 R shoulder

and concerning the snes pads I believe I have
about fifteen of them

theres also ebay...

nonnus29
Flecko

By "equivalent that is local to your area", I meant a local form of EBay. There are alot of spin-off sites that are auction sites. I figured maybe there was one that was closer to you than America, thats all.

I personally vote for 128megs of RAM(256 is overkill since there isn't as much OS overhead), and any CD drive is fine, and an 8-direction,8-button pad. Plus, we'll probably need that IDE->CF thing if thats the route this is going.

I personally have a USB microsoft sidewinder that has these features(6 front buttons, 2 shoulder buttons, and a "shift" button allowing for 16 total combinations.) Its a pretty nice controller.

I also have to say that I'm not totally in support of using the console controler->converter->PC things is a good idea. There are tons of them out there, and not all of them work the same. Plus, getting ahold of legacy controllers isn't always the easiest thing to do.

Here is a pic of my controler.

And here is a review.

EDIT: Oh...and I vote for the 533mhz variety of Eden. I think that might be our sweet spot. Any other thoughts on this?

EDIT #2: This site doesn't help you any Grudge?

EDIT #3: After reading a review, the 533mhz Eden performs FPU/multimedia computations a bit better than a 233mhz Pentium MMX, so I think thats not a bad spot, considering the games we want to design. Anyone else think so?

Hope this helps.
-Flecko

Steve++

I've pretty much read every post in this thread. This is something I've also wanted to do. However, I would like to go a different way. Instead of making a PC-based console, I would like to build a system almost from the ground up. I understand the benefits of a PC-based system, but I'd like to take on more of a challenge. I'm not going for high specs.

Basic architecture: CPU, RAM, ROM, video, sound, basic i/o including RS232, disk, cartridge.

I'm sure it would be a lot of fun and I'll probably fry a few chips in the process. That's if I ever do it.

By the way, are there any 8cm only cd rom drives out there?

Grudge
Quote:

EDIT #2: This site doesn't help you any Grudge?

Nope, not really. I though I'd try Belgium as I have some money in a savings account there, but the Belgium sites are expensive and it'll be cheaper to try and buy directly from mini-itx.com, the sites on there are also limited with what they sell...

Quote:

I would like to build a system almost from the ground up.

This is what I originally wanted to do, but I think I'll stick with pc-clone for now. If you do ever do something like this, then please let me know. I'd be very interested to see how thats going.

X-G

Flecko: The only objection I would have against that pad is the fact that it's damn uncomfortable to hold. :-/
Call me crazy, but I prefer the cheaper 6-button Sidewinder, ergonomically-wise. Of course, the fact that it only has 6 buttons sucks donkey.

Derezo

The best pad I've found, which I own: ThrustMaster FireStorm Dual Analog. :)

Not cheap compared to other pads though. Paid $39.99 CDN for mine last July.
Very comfortable, and it's got dual-shock w/o batteries (USB, of course).
The only problem I have with it, which I have with every single pad on the PC, is that the D-Pad is icky. I hate how it's all one button. (I know it's like that with console pads, but it doesn't feel like one button)

This idea does sound great. I might consider grabbing a mini-itx and trying it (Sharing results/ideas if you're interested, of course).

phate
Flecko said:

I personally vote for 128megs of RAM(256 is overkill since there isn't as much OS overhead)

I think that 128 would be the max you would
possibly need.

Steve++ said:

I would like to build a system almost from the ground up.

I always wanted to do that two.
I will probably do that for the Alix II
(now I feel like sony ;D)

Flecko

Perhaps we could include a number of different controller drivers, and list them all as requirements. As long as they have 8+ buttons?

I think that makes pretty good sense, and shouldn't be too hard to do.
-Flecko

Grudge
Quote:

Perhaps we could include a number of different controller drivers, and list them all as requirements. As long as they have 8+ buttons?

Could work, maybe everybody should post the different type of controllers that they like to use and then we'll try to find drivers for those particular controllers (for Linux). Anybody used controllers under linux ? Does each type of controller have it's own driver or is there a standard driver for most controllers ?

I've created a small site for this project so long. It's nothing major yet, but it'll do for now. It will be managed by me and Flecko. You can find it at [url http://www.pixelate.co.za/acp/index.php ]

Keep the ideas coming !

Blade Nick

kewl I wanna help

Grudge
Quote:

Blaaa Blaaa BLaaa I am Blade and here me roar I'm comming through ure door. Look left Look right here i am all dresed in white. I farted on ure head I sneezed on ure toes. I used ure hair to wipe my nose. So don't try and kill me but only if u can with the 40 tones of milk u keep in that can. Open the lid and see what is inside u get scared caus I just died. Then u get my body and see that all of my hairs are coverd in feet. Then u scream becaus of the horror u uninstall my game and decide to play with ure mother. She then says that it is time for bed she tucks u in and pats ure head. This was a story of mine today that u have heard and wanted to slay. So now leave in peace and chew on ure nails beacuse u are wating for more of my tails.

Wow, freaky !

Quote:

kewl I wanna help

Details on how people can help will appear soon on the website. In the meanwhile you're welcome tho use this thread to throw out ideas, and comments...

Evert

Have you considered the compatibility of Allegro (or Linux) with USB gamepads? I have no personal experience (my gamepad fits on the gameport), so I don't know if this is an issue at all.

Then there's the following thing that needs to be considered: how will you bring down the system if you want to deactivate the console? Ordinarily, you'd just throw the switch. With Linux filesystems, just powering down the system is going to give you problems, as they need to be unmounted first. Not a problem (assumably) for read-only filesystems, but for writeable filesystems (savegames!) it is a problem.
Any thought on how to handle removable file systems, btw?

Grudge
Quote:

Have you considered the compatibility of Allegro (or Linux) with USB gamepads?

Yep, very important thing. Has anybody used usb controllers with allegro games ? If so please tell us about your experiences. What about two controllers ?

Quote:

how will you bring down the system if you want to deactivate the console?

one way of maybe doing this, is instead of just having a power switch on the 'console', build a switch which lets the machine shutdown instead of just breaking the power to it ? This switch could be something connected to a serial port or something, and have something running on the console which checks the status of this switch ? I don't know, I'm just throwing ideas around here. Anybody got something better or different ?

EDIT : USB Controller for Linux link (very interesting )

Supported USB Game Controllers under Linux :
Here
and
Here

X-G

About the powering down ... I don't know how it works for you, but when I press the power button on my box, the OS powers down gracefully as it is supposed to - it just doesn't suddenly shut down.
So, obviously it's possible to get this to work in a good way ...

Also, I've never had any problems with USB gamepads. Of course, I've never tried them much in Linux. Will do when I get home.

Mars
Quote:

The best pad I've found, which I own: ThrustMaster FireStorm Dual Analog.

I have got the wireless version of it. The wireless part was more or less a waste of money, but oh well.

Quote:

The only problem I have with it, which I have with every single pad on the PC, is that the D-Pad is icky.

I thought I was the only one with this problem. I can't use the d-pad to move stably into any direction. With my old Sidewinder pad, I didn't have this problem.

Quote:

Have you considered the compatibility of Allegro (or Linux) with USB gamepads?

No problems with SuSE 8.0 or Windows XP, be it with or without Allegro.

Evert

Hmm... If I throw the switch on my box the power is cut. Wait - I actually need to hold it for a few seconds for the power to go off. I don't really know what happens if I just tap it slightly, but I have a feeling the system will go into stand-by mode.

Flecko

Doesn't the newest linux filesystem alleviate the worries of dataloss/corruption on shutdown? And even so, would that matter in our case anyways?

-Flecko

X-G

Well, the boot media will be write-protected anyways, hm? So, the only thing that could be damaged would be things like save floppies or whatever we decide to use - but then again, turning off ANY console while it's saving tends to screw things up. As long as all file writes are flushed properly, it should work, hm?

Flecko

After playing the latest release of KQ, I vote it be a launch title for the Alix ;D Its really cool, and it reminds me of a great mix between the best of the 8/16 bit console era. Maybe after we get the system set up, we can look into "porting it" as I'm not sure if one of their goals is to run under linux or not. But it'd certainly be sweet.

Besides, I haven't hear much on this topic in awhile. If we have any "final" hardware ideas, I'm ready to order the part whenever. Just let me know.

Oh, also, Alex 4 would be a sweet launch title too.

-Flecko

Blade Nick

Ahhhhhh so u finally came accross to the problem of power. You could use the natural energy that all persons contain called Ki. Or just use psyenergy. Weee but seriously I'll through in a decoder for gameboy adavned hehehe me make it.

nonnus29

Heh, there are a ton of good allegro games (just look in the awesome new depot!)

1. Anything by Johan Pietz

2. Fenix Blade

3. Sirroco's Frenzy

4. KQ of course

etc....

;D

Grudge

Sorry, was away for the weekend. The linux cd part is just about done, still need to get some libraries on it. Will have a look at all the hardware specs tonight. Still need to see if I'm going to be able to order/import the parts to SA.

Quote:

Heh, there are a ton of good allegro games (just look in the awesome new depot!)

1. Anything by Johan Pietz

2. Fenix Blade

3. Sirroco's Frenzy

4. KQ of course

etc....

All good and well, but do these games work with joysticks ?

Trezker

Are you sure your machine will only feature joysticks? Couldn't you have mouse and keyboard aswell? Miffonoid uses a couple of keys, all of the mouse, but I haven't thrown in joystick support. And the hiscore entry isn't joystick friendly.

Mars

If you want a bootable Linux CD, you might be interested in Knoppix. It's amazing, you can plug it into nearly any PC and it detects your hardware at boot time and gives you a (nearly) state of the art Linux desktop that even connects to the Internet almost automatically. You could take it as a starting point and then remove everything unnecessary - like most of the hardware detection, KDE and the rest of the desktop software, networking...

Derezo

it'd be more hassle removing keyboard support than adding it, really. since keyboards are USB as well.. not to mention that motherboards (all?) have PS/2 mouse/keyboard onboard :D

Evert

Having a mouse and keyboard somehow would make it feel less like a console, wouldn't it?

Trezker

The feel isn't in the joystick, it's in the TV.
Atleast that's my opinion.
The TV creates the atmosphere.

spellcaster

The problem with the kb is simple... you'll need a very long cable. I've a big screen, and I'm normally 2-3 meters away from my TV while playing.
IR keyboards are not really suited for games. The reaction time is too high and chances of the rays being blocked is also something to consider.

For a mouse you'll need something to place it on. I'm not sure how you want to use it in a gaming environment? A trackball could work, or one of these multimedia trackball sticks (trackball at the top of a pistole like handle, with triggers for mouse buttons)
But all this really increases the cost. You could use some of these game keyboards, like pc dash, strategic commander, claw, etc... but I'm not really sure why you'd want to do this.

Trezker

Well, if you're 3 meters from the TV you could have a table.
And my SEGA controls don't stretch that far.
I usually sit near enough to touch the TV with the feet when I play games. I guess my eyes take the punch but I haven't felt anything yet.

spellcaster

Maybe it's jus me then :)
I normally play sitting on my coach, which is in normal viewing distance from the TV.

Quote:

Well, if you're 3 meters from the TV you could have a table.

I could use my coach table, but that' in the height of my knee caps, and I'd have to a mouse pad or something... I see why a mouse will be helpful.
I just want to point out why the mouse has not yet become the standard interface device for console games yet :)

Trezker

This isn't a standard console. :)
I don't suggest kb and mouse to be standard, but if you have some USBs and leave the support in the box, then the user can choose controls freely.

Grudge

Support for keyboard and mouse would be there. But the idea is to have the console and games work with the game pads ? I guess it'll be up to the user if they want to use their mouse and keyboard, but we have to look at which games support joysticks and start with those ...

Trezker

Let the game check if the needed control(s) are plugged in and display a message if not...

Flecko

So once again, its up to the game programmer? How about this. Make sure your games are absolutely minimally useable with the joypad, and if the user has a keyboard, allow "additional" functionality. The dreamcast works this way. If you plug a keyboard in, you can type your name in or highscores or whatnot, but it doesn't rely on it.

I mean, a tad more programming in the games department isn't going to kill anyone, and besides, there aren't all that many games released that support controllers. And besides, KQ is perfect as far as a minimal number of keys(buttons) required.

The reason why I said "launch title" is that I'm not sure most games support linux, or the controller setup we have, so they'll most likely need modification to work on the Alix. So basically after we have all the hardware/software specs laid out, hopefully we can say "do this to your games to get them to run on the Alix," and that'll be that.

-Flecko

Trezker

Funny you should mention that, some good spirit ported Miffonoid to linux for me, and he didn't even ask. I just got a PM that he'd added it on a linux game site.

X-G

For games, maybe we should set down a number of standards that a game must fulfill to get an "Alix Compatible" mark or something. Things like using proper saturation, must be fully functional using only a gamepad, etc?

Grudge
Quote:

For games, maybe we should set down a number of standards that a game must fulfill to get an "Alix Compatible" mark or something.

Yep, That would be the best way to ensure that the games work. Maybe we should get a couple of games so long and convert them to linux games playable with gamepads ?

Anybody up to it ?

Flecko

I can install Allegro on my linux partition sometime this weekend and bang out a simple game to "test" if needs be. I already have a mostly functional breakout clone working, not the greatest, but it can easily be ported.

I'm at work though, will update my post after 5.

UPDATE: you got allegro working with both fbcon and SVGAlib grudge? what are you using for sound? Fill me in with what I should code towards, and I can port my breakout clone over. Its pretty clean as far as my recent code has gone...and it should be easy to make work with the joystick. When I get some free time this weekend, I'll look into it. School has been really rough lately though, so no promises. But believe me, I'm behind this project.

-Flecko;D

madpenguin

I'm curious; is anyone out there working on (or has anyone out there come up with) a standard Alix distro yet?

phate

for linux?

I think flecko is.

Grudge
Quote:

I'm curious; is anyone out there working on (or has anyone out there come up with) a standard Alix distro yet?

I'm working on it, still needs a couple of bugs sorted out.

This thread is being continued
here.

Thread #240922. Printed from Allegro.cc