Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!pacbell.com!tandem!zorch!sega0!mykes From: mykes@sega0.SF-Bay.ORG (Mike Schwartz) Newsgroups: comp.sys.amiga.programmer Subject: Re: Lemmings - a tutorial Part V (last) Message-ID: Date: 27 Mar 91 16:40:18 GMT References: <23788@well.sf.ca.us> <23837@well.sf.ca.us> Organization: Amiga makes it possible Lines: 92 In article <23837@well.sf.ca.us> farren@well.sf.ca.us (Mike Farren) writes: >mykes@sega0.SF-Bay.ORG (Mike Schwartz) writes: > > >>All you talked about here is how to strip stuff out of a product to make >>it Amiga friendly. > > >Not at all. What I talked about is how to keep stuff in a product, and >make it Amiga-friendly anyway. > You explicitly said they should have cut out levels that were parts of their other products. > >>The Amiga is NOT a Mac and it is NOT a PC. > >Then why do so many game developers keep treating it like it is? One >of the things the Amiga can do that those machines can't is to run a >full and fast multitasking OS - why are you so insistent that the first >thing we should do is throw that away? The Amiga is capable of doing awesome video games if you program it right. The 68000 is not really that fast, and the operating system is fast only when you compare it with Unix. Game developers treat the Amiga like it is a PC by using the OS. You can't take over a PC, because you need the BIOS to interface to a variety of hardware configurations. The multitasking ability of the Amiga is certainly impressive, but the Amiga has other qualities that video games often need to stress more. Like the blitter, copper, audio, etc. Most of the PC people I have seen that move over to the Amiga struggle with volumes and volumes of poorly illustrated RKM manuals and typically don't make games that I rate very high. The Amiga operating system is not a high performance video game operating system. BOBs are slower than what I use. Intuition takes 30% of the CPU time when you just move the mouse around (check out a CPU performance monitor on a 68000 machine while moving the mouse). Layers are totally unnecessary and way too slow. Exec tasks require a minimum of 2K of stack each, while any game I ever do needs only 512 bytes of stack for 80 tasks under my own kernel. You mention in your lecture/article stream that the OS steals 80K of RAM (that is almost 20% of what you get on a 512K machine). Even if I don't need that 80K for the game, I can always find something useful to do with it (like adding instrument samples for the music driver). The ROM Kernel routines have many many bugs in them that you end up programming your way around. It is not lazy to want to avoid the hassle. It is just more cost effective to make the best games the machine can do and to make them as fast and often as you can. The only thing that the OS gets for you is the ability to use hard disks. If commodore were smart, they would make ROM routines accessable for video games to access the hard disk when the OS is not running. This is really what the machine needs. It may shock you, but I actually do much more programming of the Amiga in 'C' under the OS than I do taking it over. When you make a game that is 40 Megs worth of source files (graphics, sounds, code) on hard disk and ends up on 2 880K disks, you need to write a lot of programs to manipulate the data. IFF format, for example, is fine for a source file format, but wastes disk space in a product. Most people who program the Amiga don't have the ability (or gumption) to write in assembler language. These are the people who I would call lazy. Most people who program the Amiga don't have the ability to write their own native operating systems that outperform the ROM Kernel, so for them the OS is the only choice. In my case, I write assembler language because I can. I take over the machine because I can. People actually pay for what I program, so in order to give them the best I can do, I go the extra mile. It is ridiculous to say that someone who goes to the extra effort that assembler language programming takes is lazy. Have you ever taken over the Amiga? I bet if you did, you'd change your tune. I on the other hand have done things both ways (using the OS and taking over), and the power you gain by taking over more than offsets the capability to multitask your game with other programs. Open your mind and give it a try, then we can really have a productive disagreement. > >-- >Mike Farren farren@well.sf.ca.us -- ******************************************************** * Appendix A of the Amiga Hardware Manual tells you * * everything you need to know to take full advantage * * of the power of the Amiga. And it is only 10 pages! * ********************************************************