@gurthuk
I have about 6 hours before the draconian new Finnish copyright law takes effect, so this is the very last possibility of me legally talking about these things. I still try to stay deliberately vague to stop helping too much.
1st. How where these games cracked - the disks were non-dos so accessing the contents couldn't have been easy?
Regarding physical disk formats: Basically the very first track of the game was still normal format since else the system could not load the bootblock and boot the game. The first track usually contained the actual trackloader that loaded rest of the tracks (if they were some custom format to allow more storage, for example).
Logical format: Since the trackloader is custom already, there is no need to settle for OFS or FFS filesystems. Sometimes to fool people the disk in fact was valid OFS, with the gamedata hidden inside blocks marked as 'used' in the bitmap. Thus, you could copy the files just fine, but it would not copy the actual game loader and hidden data...
Anyway, to get the actual code you first needed to load and disassemble the loader. Once you did this, you could mofidy the loader to load the whole game to memory at once, and then save the dump to a file. Then you disassembled the game itself and find out how the protection works and how to work around it.
Needless to say this requires m68k assembler and amiga hw programming skills. There are no shortcut here, the process can't be automated. Crackers were often excellent coders themselves (and in the early days some of the actual cracks were made by some real world programmers, even game programmers themselves! This was mostly before Amiga though.)
Like any other technically challenging thing, actually breaking some protection can be seen as goal in itself (perhans close analogy would be picking locks. Even if you do it as a hobby doesn't mean you necessarily are a burglar). It is quite sad that even european legislation is now going to prevent these activities, even if only for self education at home... 5 hours 30 minutes left here...
2nd How could the compiled code altered to add cheats?
Actual modification of the game would often happen by hooking some locations in the code to jump to your own and then execute the replaced instructions and jump back (jmp-...-oldinsts-jmp or jsr-...-oldinsts-rts). Sometimes some chunks of the code would be totally rewritten, however this is much harder since often the games used absolute addressing (not pc-relative).
Removing the protection and adding cheats would be quite similar task, you first needed to actually understand how the thing worked before you could modify it.
Most of the time the game loader was replaced with another one, to allow using normal disk formats that could be easily copied. The loader would typically display a cracktro boasting the greatness of the cracker and their group (from which actual intros and demos evolved btw). If the game was trained, the thing would then allow player to enable/disable the cheats (often from some simple menu). Sometimes the game would have in-game extra keys to allow realtime changes.
I won't explain the processes in detail or the tools used. I hope I'm not bending the site rules too much here.