Allegro.cc - Online Community

Allegro.cc Forums » Off-Topic Ordeals » Why not something other than Allegro?

This thread is locked; no one can reply to it. rss feed Print
 1   2 
Why not something other than Allegro?
LennyLen
Member #5,313
December 2004
avatar

Richard and Andrei: do you remember (if you heard of it) the book called "All the way with GTIA?" My parents bought me a copy of it, but I never really used it as I bought an ST a month or so later.

Thomas Harte
Member #33
April 2000
avatar

Isn't the GTIA the one that builds on the raster surfing of the 2600, but automates much more of it, letting you create a little display list that means the chip can introduce mode and video address discontinuities at predictable locations all alone? I always thought that sounded like the way 8bit consoles should have been done, albeit with more pixels!

Richard Phipps
Member #1,632
November 2001
avatar

The GTIA added several extended gfx modes (including some 16 colour ones at 80 x 224). It was only available on the XL and XE series of machines IIRC.

I don't think the GTIA was responsible for DLI (Display List Interupts), I think they were in the earlier CTIA chip too.

FMC
Member #4,431
March 2004
avatar

RpgMaker 95/2k (2000)
HTML & Javascript (2001)
Basic {i don't remember which flavour} (2001)
Python (2002)
Pygame {SDL for Python} (2003)
C\C++ + Allegro (2004)!
PHP (2005)
Java {forced by university courses...} (2006)

[FMC Studios] - [Caries Field] - [Ctris] - [Pman] - [Chess for allegroites]
Written laws are like spiders' webs, and will, like them, only entangle and hold the poor and weak, while the rich and powerful will easily break through them. -Anacharsis
Twenty years from now you will be more disappointed by the things that you didn't do than by the ones you did do. So throw off the bowlines. Sail away from the safe harbor. Catch the trade winds in your sails. Explore. Dream. Discover. -Mark Twain

23yrold3yrold
Member #1,134
March 2001
avatar

I started with QBasic and bombed royally; I could make simple text games and still graphics but animated sprites were impossible for me. Took up C++ with an interest in making it a career, ended my education not feeling much smarter. We used Visual C++ and played with MFC a lot, so I went looking for something a bit more "bare" C++ which ended up being DJGPP. The download page mentioned Allegro, I thought "cool" and downloaded that too. Rest is history. Since then I've also picked up Win32, OpenGL, some Java .. Allegro is simple video game easy mode though. :)

--
Software Development == Church Development
Step 1. Build it.
Step 2. Pray.

Arthur Kalliokoski
Second in Command
February 2005
avatar

Quote:

OpenGL (easier but still too hard)

You mean it doesn't have the sound, keyboard etc. built in right?

My first graphic attempts were with some shareware assembler, and I had to buy a shareware disk called Fingerpaint with Hercules monochrome mode to find out how to do a mode set.

They all watch too much MSNBC... they get ideas.

Todd Cope
Member #998
November 2000
avatar

I used Recreational Softwre Design's Game Maker (don't think this has anything to do with the current one) for a while and made several platform and overhead games ~1995. Meanwhile I was learning C and programming text-based games (compiled using Turbo C++ 3.0). I had a book called VGA Game Programming Explorer which came with a disk with C code on it to handle various things related to programming VGA games.

I didn't know at the time that the code from the book would compile with my Turbo C++ compiler because I thought TC++ would only compile C++ code. When studying C I learned that C was compatible with C++ and figured out how to compile some of the code that came with the book. I started hacking around with the example programs and learning how to make the code do what I wanted.

My first C games used VGA Game Programming Explorer code for the graphics and MikMod for the music/sound engine. My first year of college I decided to give up all my pirated software so I deleted my TC++ compiler and wouldn't do any more games except experimental stuff with Ada which I was learning in one of my classes. The graphics library sucked for Ada so I went looking for a better one to use with Ada and stumbled upon Allegro and DJGPP. DJGPP intrigued me as it was a complete compiler for free, 32-bit, gave me access to a lot more RAM than TC++ did.

So I downloaded DJGPP and Allegro and started immediately making use of the new tools. Allegro was so easy that I was up and running in no time. I converted one of my old Turbo C games to use Allegro in an hour or two and Light Breaker 32 was born. I began work on a tilemapping engine almost right away but I wouldn't make anything with that for another year or two. I was actually working on a suite of game-making tools in the vein of the old Game Maker that I had used before so both me and my older brother could make some games together. These never came to completion. Later, I ended up using the tilemapping engine to make Paintball Party.

When I first started using DJGPP it was MikMod still for music and when Allegro became cross-platform I used FMOD in Windows and MikMod in DOS. I dropped DOS support partway through the development of Paintball Party so I used FMOD exclusively for a while. When DUMB came out I switched to that and have stuck with it ever since. I also added support for MP3 and OGG music to Paintball Party after a while and used AlMP3 and AlOgg respectively for those.

When OpenLayer came out I started playing around with that. I made a more advanced tilemapping engine taking advantage of hardware accelerated features. I had one game in the works using OpenLayer but I kept running into problems with it. When 2.0 came out I was excited but the excitement quickly faded as 2.0 was more broken than the first one. Many of the things that were broken have been fixed but I still can't get it to compile properly with the options I want.

To sum up:

  • 1995: Game Maker (Recreational Software Design)

  • 1995: Turbo C++ with VGA Game Programming Explorer and MikMod

  • 1998: Ada and it's crappy graphics lib (never made any games with it)

  • 1999: DJGPP with Allegro and MikMod

  • 2000: MinGW with Allegro and FMOD

  • 2002: DUMB and AlMP3 and AlOGG

  • 2006: OpenLayer

  • 2006: Back to plain Allegro + DUMB + AlMP3 and AlOgg where needed

Andrei Ellman
Member #3,434
April 2003

Richard Phipps said:

The GTIA added several extended gfx modes (including some 16 colour ones at 80 x 224). It was only available on the XL and XE series of machines IIRC.

I don't think the GTIA was responsible for DLI (Display List Interupts), I think they were in the earlier CTIA chip too.

The Atari 8-bits had two graphics chips - the ANTIC and the GTIA. The Antic was responsible for converting video memory into bitmap-data(such as rasterising fonts). It used a display-list in order to interpret each line of video-memory (eg. which graphics-mode to use per line). It sort of acted like a co-processor. Another thing it could do was get it to fire off an interrupt whenever a line had finished drawing (Horizontal blank). This was known as a display-list interrupt (DLI), and could do things like change the colour-register.

The GTIA chip converted bitmap-data into a video-signal. Depending on the mode, it would chose howmany bits make up a pixel (up to two). The two bits-per-pixel was a limitation of the earlier CTIA chip (used in early models of the Atari 400/800). The GTIA chip used a hack to get 4 bit-per-pixel colours. From the Antic's point of view, the 16 colour-modes were the same as the regular modes - it's just that the GTIA could be set to a mode where it interpreted them differently. However, this made high-resolution text illegible (unless a DLI was used to change the GTIA-mode). The GTIA also used the colour-registers to map a set of bits to a colour-value. It was also responsible for the sprites (player-missile graphics).

The Atari 8-bits had plenty of tricks up their sleeve. It was possible to create an 80x96 mode that could display all 256 colours at once. They could even do animated fonts with virtually no CPU overhead (changing the location of the font-data once per vertical-blank). Sadly in the days of 32-bit high-resolution display-devices that can be manipulated by the CPU in realtime, graphics programming has lost it's magic.

AE.

--
Don't let the illegitimates turn you into carbon.

Thomas Harte
Member #33
April 2000
avatar

Quote:

Sadly in the days of 32-bit high-resolution display-devices that can be manipulated by the CPU in realtime, graphics programming has lost it's magic.

I disagree. I think it lost its magic for a long time, and then they invented pixel shaders! Sure the magic is more about maths now than engineering, but it's still magical.

Richard Phipps
Member #1,632
November 2001
avatar

I still enjoy playing with cool graphical effects and routines more than anything else. All my games (apart from Dynamite) feature some special graphical tricks or cool effects.

Andrei Ellman
Member #3,434
April 2003

I think the magic has now shifted more towards the software side of things. But i agree that pixel-shaders are cool, but the magic isn't so easy to spot as the effects you could do on the old 8-bit hardware.

AE.

--
Don't let the illegitimates turn you into carbon.

X-G
Member #856
December 2000
avatar

I don't understand why people think it's more noble or more "magical" to work under abhorrent, limiting conditions that always lead to inferior results. :P

--
Since 2008-Jun-18, democracy in Sweden is dead. | 悪霊退散!悪霊退散!怨霊、物の怪、困った時は ドーマン!セーマン!ドーマン!セーマン! 直ぐに呼びましょう陰陽師レッツゴー!

Richard Phipps
Member #1,632
November 2001
avatar

Restrictions can make you have a narrower (but clearer) game design or idea. And then there is the satisfaction of getting around a technical hurdle. Perhaps you just had to have been programming on those machines to appreciate it.. :)

Thomas Harte
Member #33
April 2000
avatar

Quote:

I don't understand why people think it's more noble or more "magical" to work under abhorrent, limiting conditions that always lead to inferior results.

The magic is when what hitherto appeared to be the limit of capabilities is exceeded. Just like in real life. The magic is now largely gone in the graphics realm because the limits are too wide, too vague and ever changing.

X-G
Member #856
December 2000
avatar

And pray tell, what makes it impossible for you to exceed the current limits in the same way? All I hear is curmudgeons complaining that it's too hard to stretch the limits of modern hardware, and/or being sour about it being too easy to do now what they took considerable pains to do 10 years ago.

--
Since 2008-Jun-18, democracy in Sweden is dead. | 悪霊退散!悪霊退散!怨霊、物の怪、困った時は ドーマン!セーマン!ドーマン!セーマン! 直ぐに呼びましょう陰陽師レッツゴー!

Richard Phipps
Member #1,632
November 2001
avatar

I don't think any of us here were complaining in a 'sour' way.. :) Maybe it's nostalgia as well, we grew up programming on 8 and 16 bit machines and it was a very different era. Some people here only grew up with the PC and it's not the same.

Jakub Wasilewski
Member #3,653
June 2003
avatar

Quote:

what makes it impossible for you to exceed the current limits in the same way?

Well, it's not impossible, just mostly futile on the PCs.

In the earlier days of computing a given platform stayed on the market in an almost unchanged form for years at a time. This gave developers time to improve and research new, clever techniques. And this work actually had some use, because they could then market the product using those improved techniques.

These days, you can see these taking effect on the consoles, mostly. If you look at launch tiles and "last generation" titles for any given console, you will invariably find that the latter have much better graphics, despite running on the same hardware - so the magic is still there.

On the PCs however, pushing the limits of a specific line of GPUs has little sense, because by the time you perfect your optimizations, that line is already obsolete. This doesn't pay off in the long term, so it's usually not done.

For the hobby developer, there are also other concerns:

  • The old-timer magical gfx tricks often used very specific quirks in a given piece of hardware. This is nigh impossible on PC, because you'd have to write custom code for every permutation of computer parts.

  • Also, these days, the bar is set much, much higher if you want to push the limits. The knowledge needed to devise a cool trick on the C64 or Amiga was not that vast. If you want to do something really great now, you have to have a very good grasp of mathematics, and the hardware itself is much more complicated. Therefore, the "magic" is less accessible to a hobby programmer.

I'm not saying that programming lost its magic on new hardware. But it's definitely a different type of magic now, and not all of that difference (but surely some of it) stems from nostalgia.

---------------------------
[ ChristmasHack! | My games ] :::: One CSS to style them all, One Javascript to script them, / One HTML to bring them all and in the browser bind them / In the Land of Fantasy where Standards mean something.

Arthur Kalliokoski
Second in Command
February 2005
avatar

Quote:

complaining that it's too hard to stretch the limits of modern hardware, and/or being sour about it being too easy to do now what they took considerable pains to do 10 years ago.

I remember feeling peeved about all the electronic music stuff etc. coming out 20 years ago, I felt like I'd wasted my time learning to play guitar. And I feel kind of sheepish about all my software rendering and FPU emulating code. It's not easy to admit you did something that turned out to be a dead end.

OTOH, I remember seeing those (pre-rendered) advertisments on TV for console games, I thought how my games would never look that good, now that you've all convinced me to use Open GL they do, but the current advertisements have raised the bar again.

[sarcasm]
Progress should be outlawed
[/sarcasm]

They all watch too much MSNBC... they get ideas.

Trezker
Member #1,739
December 2001
avatar

You set a graphics standard for your game once and then don't care about progress.
As a small developer you shouldn't try to compete on the eye candy side.
Focus on the things that make games popular for decades instead, gameplay.

SonShadowCat
Member #1,548
September 2001
avatar

I started with basic then DarkBasic but never made a full game. Then I moved to C++ and just wrote tons of text games( man I loved making those, good way to learn the basics too) for a few years. Found allegro somehow and I've been here ever since.

Andrei Ellman
Member #3,434
April 2003

It's nostalgia for the experiences of the joy of getting it all to work. Also, even though the hardware has long since become obsolete, the experience I gained from programming for it was the foundation for experience that I gained later on.

AE.

--
Don't let the illegitimates turn you into carbon.

 1   2 


Go to: