Welcome, Guest. Please login or register.

Author Topic: Why your old software sometimes sucked (and what could have been done about it)!  (Read 803 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline iamaboringpersonTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2002
  • Posts: 5744
    • Show only replies by iamaboringperson
refering to this thread in particular the comments from smurf & Kent,
as i promised yesterday, i would like to explain why they are a bit mis-guided about some of what they called 'copy protection' (and BTW the way i wrote my reply was kind of a joke, if you didnt alread realise ;-) )

Quote
... anyhow I bought Electronic arts games, this was back in the Amiga Dos 1.0 days, well Amiga upgraded to 1.1 and gues what none of those games worked on 1.1 due to EA's copy protection, ....
alright, nothing against what you smerf, exept that what you call copy protection is not nessacarily a deliberate act to foil would be pirates...

let me first explain that ALL floppies on the amiga were copyable! weather they had copy protection or not!
you sure as hell couldnt copy 'copy protected' software with a normal copy program(like from workbench for example), but wait! does that mean that we would all need to be a cracker to copy them? Not at all! let me explain...
the majority of copy protection would have certain deliberate errors! when the software was loaded basically, it would check for the presance of these particular errors, and since an ordinary copy program would not copy the particular errors, the program wouldnt find them on the pirate copy...
however, many of you mightof heard of somthing called a nibble-copier (funny name, but a 'nibble' is a 4 bit word! bit, nibble, byte...), and without going into the technicalities of how a nibble-copier works... ...lets just say that it would copy most copy protected software, when a normal copier would not...

 ...back to the point i was trying to make,
you would probably find that many of the same titles of those games were hard drive installable on other platforms(i.e. The Mac and IBM-PC), if making games un installable on amiga was ment to be an anti-piracy measure then why not do the same for the Mac, and IBM-PC?(and i do know that some games for IBM-PC required floppy, not many though)
also
writting an application that only works on one version of an OS, or only on one CPU is not going to help sales when people hear that the program sitting on the shelf(do you remember when amiga software was found at large department stores! wow!)wont work on their brand new shiney amiga... the software is likely to endup in the bargain-bin, doing that wont help the developers at all... firstly their sales will drop as people find out that the program wont work on their new amiga, secondly when they do want it to work on newer amigas, they have to employ the programmers again, and sometimes that might involve rewriting the entire program!
i can tell you, that making a program to run on 1.1, or 1.2, or 1.3 only was not done to deliberatly annoy users! there is no bennefit to that, developers will only loose

you might also notice that many of the disks that games came on were not readable by AmigaDOS! most amiga users have discovered this(it used to confuse me back in the old days...) this does not make a disk un-copyable! it certainly makes it near impossible to install on HDD, but the disk can still be copied, and quite easily

my theory on why games were rarely HDD installable on amiga, as opposed to the equivilent titles on MS-DOS, or Macintosh, was probably more to do with the fact that amiga's never required you to boot into the OS from disk, before starting the games! virtually no game on the IBM-PC could boot straight from BIOS, same with the Mac, so for those users the OS interface weather graphical, or CLI were familiar sights to most users, it was always expected that when you bought a game, to be able to use it you needed to know dos! even if the instructions were: "Insert disk A into drive A: and type A:\ followed by: run (or install)",  the fact is that atleast for the first disk in the series, there had to be at least one readable file(or should that be executable) games were not made to be booted from on those platforms
usually since the game(or part of it) would start executing from the boot block onwards, developers would for whatever reason just use their own custom 'format' basically they would just chuck the data on there not using actual files(or any particular format), there was no directory structure required
possible reasons for this was:
-that more can be crammed onto a single floppy this way
-it may be a little faster
-its a tiny bit more difficult to get in there and hack the games contents(but not much)
the down side of course is that, with no actuall files, you cant just drag and drop it all to the HDD and play from there

making software that was not compatable with extra ram, new OS's and better CPU's was not going to help the developers either
basically many programmers saw the amiga as just another console, and programed on it like it was a commodore 64, or a sega, NES, you name it...
NO, as most of us know, the amiga was a proper computer, comparable to the Mac, and IBM-PC - strangly people saw those as proper computers but not the amiga, and thats the way some software companies saw it.
you cant just program on it like its a Commodore 64...
unlike the C64 there were many configurations, as we all know, you cant assume they are all the same speed(how many games have you used, have been way to fast on a modern amiga, i can think of 'populous' for sure)
and do you remember that '1.2' that appeard on the 'hand holding a disk screen?' some games developers must of been blind! because they didnt seem to realise that AmigaOS(and, yes there was an OS on the Amiga too!)was evolving and changing...
Commodore were awear that AmigaOS would experience improvments, and that so would the hardware...
Commodore were like god in a way, they built the thing, they knew what was inside and how it worked, and they gave the software developers some rules!
The reason there was so much incompatability was that developers disobeyed the laws... commodore predicted what would happen(but strangly not their death) and told developers how to avoid incompatability... commodore wrote it all over the place, and some developers chose to ignore it
why? you might ask but why would a software developer deliberatly choose to ignore such rules if they were so important to commodore?
well, one reason was outlined above, the fact that they saw the amiga as just another console, they were used to programming on the C64, and NES, and Sega...
another reason is speed, if you hit the hardware direct you dont have to go through a whole lot of 'unnecessary' code - it will be faster
most programs would call just ONE function, Forbid(), this was the one that would disable multitasking... after that no more function calls until the next reset...

i was thinking about just copying the rules that commodore gave word for word here, but i have decided to at least try to represent them in my own words(and YES, i am refering to my 2nd edition RKRM: "AMIGA ROM Kernal Reference Manual: Libraries and Devices")

Let us all turn to pages vi and vii:

* non-byte fields must be word-aligned

* address pointers must be 32 bits, not 24 bits, (apparently the old MacOS and software for it used 24bits!)

* initialize fields that are not defined to contain particular initial values to zero, this goes for reserved fields too

* data structures to be accessed by custom hardware are not to be allocated on a program stack, this also goes for public structures

* never use absolute adresses

* dont modify the processor exception vectors or processor priority level

* do not assume that programs can access hardware resources directly

* do not access shared data directly without mutual exclusion

* execute in user mode(probably only for mulitasking)

* Do not disable interrupts or multitasking for extended periods of time(i guess some gamers wouldnt even care about this)

* dont use MOVE SR, - this is for 68010 and '020 compatability, obviously commodore were thinking about using these CPU's back in the A1000 days....

now there are more rules than that in the newer RKRM's
software developers should of known and obeyed the rules... there is no benefit to a software company in makeing incompatable software...

:-) comments, questions??
 

Offline Mike_Amiga

  • Hero Member
  • *****
  • Join Date: May 2002
  • Posts: 1448
    • Show only replies by Mike_Amiga
    • http://www.mp3.com.au/forefinger
Yes I have some comments and some questions...

but they are not related to this topic!:lol:
AKA ED-209 on IRC...
 

Offline iamaboringpersonTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2002
  • Posts: 5744
    • Show only replies by iamaboringperson
Quote

Mike_Amiga wrote:
Yes I have some comments and some questions...

but they are not related to this topic!:lol:
thank you Mike_Amiga! thats quite appreciated!  :-D
 

Offline xyth

  • Jr. Member
  • **
  • Join Date: Apr 2003
  • Posts: 96
    • Show only replies by xyth
I agree with you, but I think the main problem was that Commodore did not make hard drives standard hardware until far too late (if at all).  Therefore programmers (of games at least) were forced to work from floppies, and basically I don't think great games such the Beast Trilogy would have been possible without endless disk swaps.

Programmers had to make the most of a crappy medium, and I salute them - they did a damn good job.  If most or all Amiga owners had a HD in these early days I imagine that it would have become commercial suicide to release floppy only software.

But unfortunately, even as late as 1996 game companies released floppy only games (i.e. the various incarnations of Street Fighter II)  Why?  Because even on the base level Amiga of the time, the A1200, a HD was still pretty much optional.  Of course Commodore was dead by then.  Ah hindsight.

There is no excuse for application programmers though...

Amiga 1230/50 + 34MB  (OS3.5 + DOpus 5.82)
 

Offline Floid

  • Hero Member
  • *****
  • Join Date: Feb 2003
  • Posts: 918
    • Show only replies by Floid
Some obvious points-

-The Commodore and Atari... "way of life?"... was always different from that of Apple and IBM.  Heck, Commodore didn't even *get* autobooting until the 128/1571, right?  Software houses were probably sick of printing "LOAD "*",8,1" on their floppies.

-The 1000 was under some pretty severe memory constraints- equivalent to the early Mac, but remember, 128k/256k Macs only handled 2bpp graphics.  If you had to load Kickstart, that was already one annoying disk swap, and one chunk of RAM eaten up, however compact it may have been.

-HDs barely existed when the 1000 was launched, and having seen the state of 64/128 solutions, those unfamiliar with AmigaDOS were doubtless pessimistic.  When everything worked out as fine or better than Mac and PC, users were already copying and trading to get around the flakiness -- and to recover equivalent functionality to their previous (VIC, 64, Apple?) machines, especially as some of the expected *64* compatibility didn't pan out so conveniently.  (Old issues of Info-64/Info provide good evidence; remember, pre-Internet, it was hard for anyone to really get a clue as to what was going on.)
 

Offline iamaboringpersonTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2002
  • Posts: 5744
    • Show only replies by iamaboringperson
Quote
I think the main problem was that Commodore did not make hard drives standard hardware until far too late (if at all)
i agree! it would probably be nice if zorro slots were standard too, but i wonder if all those people who mainly bought it for games would of paid more if the cheapest amiga had zorro slots (lets just suppose that the A500 didnt exist and the A2000 was the low end machine) or would they of just bought somthing else...

there was a lot of good software for the amiga in those days... and its a real shame so little of it will work with hard drives, and graphics cards... but i guess some of the amigas strengths back then turned out to be weakneses in the long run IMO
 

Offline kd7ota

  • Hero Member
  • *****
  • Join Date: Jun 2002
  • Posts: 1433
    • Show only replies by kd7ota
    • http://www.qrz.com
I remember bypassing the copy protection of OCEAN's game ELF on Amiga..... You would insert a normal disk readable on workbench, then you put in a blank one on df1. Then before you ok it, switch the disk to the ELF game.  

I am still blind on how I pulled it off. I think it only worked for that game, but I may be wrong. :-D
-=-=-=-=-=-
Mine!  :-D
 

Offline iamaboringpersonTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2002
  • Posts: 5744
    • Show only replies by iamaboringperson
*sigh* the amiga would of been so much nicer if people had of followed the rules, and if more games were hdd installable, and 'exit to dos'-able

 :-(
 

Offline xyth

  • Jr. Member
  • **
  • Join Date: Apr 2003
  • Posts: 96
    • Show only replies by xyth
**HEFTY SIGH**

At least we have the brilliant WHDLoad.  I can honestly say this program more than any other piece of software (excluding OS3.x and DOpus5 of course) is what keeps me with Amiga.

And Freeciv.
Amiga 1230/50 + 34MB  (OS3.5 + DOpus 5.82)