View Single Post
Old 04 January 2013, 12:27   #28
Mrs Beanbag
Glastonbridge Software
Mrs Beanbag's Avatar
Join Date: Jan 2012
Location: Edinburgh/Scotland
Posts: 2,202
Originally Posted by Photon View Post
If you start an interrupt in an OS-friendly or OS-unfriendly way, it's OK as long as you know you won't be overflowing the stack - if you allocate memory for everything in your game.
This is always a potential pitfall no matter how you code it. Not sure why anyone would generate a fractal from an interrupt, but never mind.

You're missing the point. Nobody can make future-compatible software, not even OS-compatible software. ...
The golden age for Amiga games was very short, only from 1985 (or realistically, 1987) to 1991 when consoles took over. It's ridiculous to expect more than 5-year support and updates from a 4-man company in Germany, France or UK for a game that cost 25 GBP.
True up to a point, but if a game crashes with addition of fast ram, or from kickstart going from 1.2 to 1.3, or 2.0, surely that's just not even trying. Some things perhaps you can't be expected to predict. I don't think we could blame a coder in 1985 for not foreseeing the 68020's instruction cache for instance (which is not even Commodore's responsibility anyway), then again is self-modifying code ever really necessary or is it just showing off/hacky coding style?

The reason why you take over the system and use all the memory is not because you're "oldskool", but because non-trivial games require more than the ~200k left on a 512K Amiga when Workbench is loaded.
You can boot from floppy and still use exec/dos library calls. But I guess there is still some overhead. I remember there was an Add21k command that disabled external disk drives or something.

Fastmem didn't (and largely doesn't) really help games much. Here's why: You could put all the code and mapdata in it, but that would likely only use 150k for a big game. You couldn't have graphics, sounds, or misc. buffers for such in it. The point is that loading from disk was and is a replacement for loading the whole game in memory. And this is why loading from disk is an advantage to 'just write huge binary, who cares if people have memory for it'. (And yes, the reason it's trackloaded from disk and not file-loaded is that a 10yo could copy it in 5 minutes then.)
You can store music pattern data in Fastmem also... Insider information: Mr Beanbag stores all its game data in one big (>600k) datafile but it only opens this file and doesn't read it all into memory, rather, it loads it piecewise as required, like a sort of trackloader-in-a-file.

If the game doesn't require a harddisk to run, you shouldn't require one.
I agree entirely.
Mrs Beanbag is offline  
Page generated in 0.09372 seconds with 9 queries