Nadav Har'El wrote: > I see that a C64 diskette could hold 170 KB or 165 KB, depending on how you > count. > .. > It was amazing what would fit on a diskette back than. The most fancy games > used to fill up a whole diskette (wow!), but most games filled only a part > of a diskette, so you could have diskettes with several games. Imagine what > you can do with 160 KB of storage today - not much... > > I've come across this many times before. I'm still not sure what to make of it. The Apple ][, as I said before, had even less on each disk, and yet the number of games that required more than one disk were minimal (and, even then, they only required two, which means you flip the disk over).
BTW - I still have a square cutter with leader to make the cut in the right place on the disk, if anyone is interested in buying. Which means it all comes down to this. Why? Why do things take more space? Part of it is understandable. The C64 had a 160x200 with 16 possible colors screen, with not all combination of colors possible in each pixel. I'd say this means that an uncompressed picture took (if I understand the graphic encoding correctly) about 9.3KB in full color mode, a little less (8.8KB) in sorta color mode (reason being that mode had a higher resolution). For the Apple, each uncompressed screen had 7.5KB of data, but due to the fact that most files saved the memory layout, and that had extensive amount of off-screen bytes (totally unused), actually saving a screen shot usually took 8KB. We can plainly see how programs needed less space if they manipulated less data. Of course, at least for the Apple, almost nobody compressed images. For one thing, the CPU wasn't fast enough to open a compression in a reasonable time. But picture sizes aren't everything. Appleworks was a two sided program that gave you a word processor, spreadsheet and a database, including OS (Apple ProDOS) all in less than 290KB. How? I find it extremely unlikely that the entire program was written in Assembly. It was, probably, written in C or Pascal, and compiled. I think a lot of it has to do with "when need must". You only had 128KB of RAM, you only had so many floppy sides you could use, you had no choice but to make do. Programming was centered around making things fit, just as it was about making things spry. There is another point to it, though. Everything was simpler. I think it goes without saying that Appleworks did not support fonts. The OS was simpler too. No multi tasking and no memory protection really made things simpler. In fact, ProDOS did not even have a shell, by default. Mostly, you just dumped the code into memory and ran it. Maybe I can give an answer, though. I've invested some time in pet project (a black riddle solver, if anyone is interested). At the moment it's 378 lines of C++, using built-in classes. They are pretty elaborate, but mostly built in. The program does use the stream standard library. Compiled with -O2 and stripped, the ELF executable is 11K. It would have been much much much less if I wrote it in assembly on a 6502 or 6510, but I wouldn't have had automatic line state copying using a class so I could do easy recursive decent into the options space. I wanted convenience, and I payed for it in program size. If I took the convenience of GUI, I would have payed in even more program size. That's a trade off, and it's not inherently evil. Shachar ================================================================= To unsubscribe, send mail to [EMAIL PROTECTED] with the word "unsubscribe" in the message body, e.g., run the command echo unsubscribe | mail [EMAIL PROTECTED]
