Protection methods in use

General development discussion not covered by a specific forum
Post Reply
JonAbbott
Posts: 2955
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Protection methods in use

Post by JonAbbott »

Protection methods:
0 - No protection
1 - Protection wheel (eg The Legend of the Lost Temple)
2 - General unformatted track (eg The Last Ninja)
3 - General sector CRC error (eg Air Supremacy)
4 - General read track (eg Slappit)
5 - Oregan Developments (eg Arcturus)
6 - SoftLock (eg Gods)
7 - Daniel Simms X Lock2 (eg Gribbly)
8 - DSPS (eg Xenon II)
9 - Daniel Simms X Lock (eg Populous)
10 - Peter Gillett ZFiler module 1.0 (eg Chock Away Extra Missions)
11 - Variation on X Lock (9) (eg Wolfenstein)
12 - R.A. North (eg Zarch)
13 - Variation on Gordon J.Key (18) (The Dungeon)
14 - Gordian Lock (eg Fire & Ice)
15 - Protector (eg Pandora's Box)
16 - DM Protection Systems (eg Darkwood)
17 - Martin Piper Protection_Module 3.12 (eg Formula 2000)
18 - Gordon J. Key (eg Drop Ship)
19 - Variation on Protector (15) (eg Cataclysm)
20 - Fuzzy bits (eg The Crystal Rainforest)


Description:
<game title>[/disc no] (<protection method used>) - Disc protection detail
	Reads: <bytes> from <sector addr> ([byte addr]) - <track>.<sector> (<log2secsize>, <secspertrk>, <heads>, <density>, [disc size in bytes])



WORKING:

Air Supremacy (3)              - Track 158, sectors 0, 1, 2, 3, 4 bad CRC
                               - Track 159, sectors 0, 1, 2, 3, 4 bad CRC

	Verifies: 1 from &316 (&C5800) - 158.0 (10, 5, 2, 2, &C8000)


Arcturus (5)
	Verifies: &400 from &30C (&C3000) - 156.0 (10, 5, 2, 2, &C5800)
	Verifies: &400 from &311 (&C4400) - 157.0 (10, 5, 2, 2, &C5800)
	Verifies: &400 from &30C (&C3000) - 156.0 (10, 5, 2, 2, &C5800)


Cataclysm (19)
        NOTE: Runs module PRIVATISE which claims software vectors and descrambles disc reads
		FileV - OS_File redirected to &700 (offset in module)
		ArgsV - OS_Args redirected to &110
		BPutV - OS_BPut redirected to &110
		GBPBV - OS_GBPB redirected to &110
		FindV - OS_Find redirected to &110
	NOTE: !Run, comment out the line "RUN <Obey$Dir>.!SETCODE"


Conqueror (12)                 - Track 80 has mixed density sectors
                               - Track 80, 4 x DD 512 byte sectors 240, 241, 242, 243
                               - Track 80, 4 x SD 512 byte sectors 240, 241, 242, 243
                               - Track 80, SD and DD sector 243 bad CRC
                               - Track 80, SD and DD sector 241 bad CRC and nested sector:
                               - Track 80,  SD and DD sector 242
                               - Track 81, unformatted track
                               - Tracks 82 to 159, 10 x 128 byte SD sectors 240 > 249

	Reads: &200 from &2800 (&500000) - 40.240 (9, 250, 1, 1, &9C4000)
	Reads: &200 from &2820 (&500400) - 40.242 (9, 250, 1, 1, &9C4000)
	Reads: &200 from &2800 (&500000) - 40.240 (9, 250, 1, 2, &9C4000)
	Reads: &200 from &2820 (&500400) - 40.242 (9, 250, 1, 2, &9C4000)
	Reads: &1400 from &334 (&66800)  - 82.0   (9, 10, 2, 2, &C8000)
	.. continues reading up to:
	Reads: &1400 from &50A (&A1400)  - 129.0  (9, 10, 2, 2, &C8000)


Cycloids (16)                  - Track 159, 10 sectors 0 > 9, sizes: 3, 0, 1, 0, 2, 3, 0, 2, 1, 3
                               - Track 159, sector 2 bad CRC
                               - Track 159, sector 5 bad CRC
                               - Track 159, sector 8 bad CRC
                               - Track 159, sector 9 bad CRC
	Reads: <number is based on vsync counter OS_Byte 176> from &637 - 159.1 (7, 10, 2, 2)
	Reads: 4  from &639 (&63900) - 159.3 (7, 10, 2, 2)
	Reads: 4  from &638 (&63800) - 159.2 (8, 10, 2, 2) - Bad Parameters caused by sector CRC error, but returns 4 bytes
	Reads: 8  from &63C (&63C00) - 159.6 (7, 10, 2, 2)

Darkwood/1 (16)                - Sectors are rotated one full sector from previous track
                               - Track 159, 10 sectors 0 > 9, sizes: 3, 1, 1, 1, 2, 3, 1, 2, 1, 2
                               - Track 159, sector 2 bad CRC
                               - Track 159, sector 5 bad CRC
                               - Track 159, sector 8 bad CRC
                               - Track 159, sector 9 bad CRC
	Reads: <number is based on vsync counter OS_Byte 176> from &637 - 159.1 (8, 10, 2, 2)
	Reads: 4 from &639 (&63900) - 159.3 (8, 10, 2, 2)
	Reads: 4 from &638 (&63800) - 159.2 (8, 10, 2, 2)
	Reads: 8 from &63C (&63C00) - 159.6 (8, 10, 2, 2)

	NOTE: Hangs when you insert disc 6


DropShip/1 (18)                - Tracks 0 to 149 have a 6th sector: sector 5, 256 byte with a bad CRC
                               - Track 0, sectors 3, 4, 5 bad CRC
                               - Track 129, sectors 4, 5 bad CRC
                               - Tracks 130 to 158 have 6 sectors with bad CRC
                               - Track 159, 16 x 256 byte sectors 0 > 15
	NOTE: !Run, replace the line "RUN <Obey$Dir>.!RUN1" with "RUN <Obey$Dir>.!RUN2"
	NOTE: !Run2, add "Set Alias$L. LOAD" as the 1st line
	NOTE: !Run2, replace the line "RUN <Drop1$Dir>.SetUp" with "RMEnsure MemAlloc RMLoad <ADFFS$Dir>.MemAlloc"
	NOTE: !Run2, add "SpriteSize 50" below the MemAlloc line
	NOTE: Can't copy to HD under an emulator, as there's a file with an illegal char in !Drop Ship.GameDir
	NOTE: loader screen crashes on RISC OS 3.7

	Reads: &300 from &4F9 (&4F900) - 159.1 (8, 8, 1, 2, &50000)
 	Reads: &400 from &313 (&C4C00) - 157.2 (10, 5, 2, 2, &C6C00)

DropShip/2 (0)


Dungeon/1 (13)                 - Track 159, 19 x 256 byte sectors 0 > 18
                               - Track 159, sector 4 bad CRC
                               - Track 159, sector 8 bad CRC
                               - Track 159, sector 16 bad CRC
	NOTE: !Run, comment out the line "Run <Obey$Dir>.!Setup"
	NOTE: loader crashes on RISC OS 3.7

	Reads: 4    from &BCD (&BCD00) - 159.0  (8, 19, 2, 2) to check for disc
	Reads: &400 from &BCD (&BCD00) - 159.0  (8, 19, 2, 2)
        Reads: &100 from &BDF (&BDF00) - 159.18 (8, 19, 2, 2)
	Reads: 8    from &BD1 (&BD100) - 159.4  (8, 19, 2, 2) - Bad Parameters caused by sector CRC error,                                                                 expects data to be returned
	Reads: 4    from &BD2 - 159.5  (8, 19, 2, 2) - R2 should = &BD204
	...and then crashes

	When protection fails, it overwrites Track 0, sectors 0, 1 and 3
Dungeon/2 (0)
Dungeon/3 (0)


FireIce/1 (14)                 - Sectors are rotated one full sector from previous track
                               - Protection not compatible with 1772 FDC
                               - Track 157, no sectors
                               - Track 158, 19 x 256 byte sectors ID order: 2 > 19, 1
                               - Track 159, 19 x 256 byte sectors 0 > 18 all bad ID CRC
                               - Track 160 extra track
                               - Track 161 quad density track
	Read Track:        &316 (&C5800)  - 158   (10, 5, 2, 2, &D00C00)               slow sector
	Verify: &400  from &31B (&C6C00)  - 159.0 (10, 5, 2, 2, &D00C00)  << ID CRC    slow sector
	Read:   &1400 from &320 (&C8000)  - 160.0 (10, 5, 2, 2, &D00C00)               slow sector
	Read:   &1400 from &A1  (&284000) - 161.0 (14, 1, 2, 4, &D00C00)  << data CRC  slow sector

	* CHECK * Level 3 has no enemies if disc check fails

FireIce/2 (3)	    	       - Track 0, sector 1 bad CRC


Formula 2000/1 (17)            - Track 158, unformatted
	Reads: &400 from &316 (&C5800) - 158.0 (10, 5, 2, 2)

Formula 2000/2 (0)


Gods/1 (6)                     - Track 158, 16 x 256 byte sectors 0 > 15
                               - Track 159, 16 x 256 byte sectors 0 > 15
	!boot Reads: 20 from &4F8 (&4F800) - 159.0 (8, 8, 2, 2)
	!boot Reads: 20 from &4FB (&4FB00) - 159.3 (8, 8, 2, 2)

	NOTE: Loader crashes on RISC OS 3.7

Gods/2 (0)                     - Track 141, sector 0 bad CRC                             <<<confirmed bad dump


Gribbly's Day Out (7)          - Track 159, 9 x 128 byte sectors ID's 8, 1, 2, 3, 4, 5, 7, 8
                               - Track 159, sector 4 bad CRC
                               - Track 159, sector 8 duplicated
	!boot Reads: 4 from &59B (&2CD80) - 159.4 (7, 9, 2, 2, &16800000)
	!boot Reads: 4 from &59C (&2CE00) - 159.5 (7, 9, 2, 2, &16800000)
	!boot Reads: 4 from &59E (&2CF00) - 159.7 (7, 9, 2, 2, &16800000)
	!boot Reads: 4 from &59F (&2CF80) - 159.8 (7, 9, 2, 2, &16800000)  << expects first sector 8

	NOTE: Protection will reboot machine if it fails during !boot


Hero Quest (7)                 - Track 159, 9 x 512 byte sectors IDs 8, 1, 2, 3, 4, 5, 6, 7, 8
                               - Track 159, sector 4 bad CRC
                               - Track 159, sector 8 duplicated
	Reads: 4 from &59B (&B3600) - 159.4 (9, 9, 2, 2, &16800000)
	Reads: 4 from &59C (&B3800) - 159.5 (9, 9, 2, 2, &16800000)
	Reads: 4 from &59F (&B3E00) - 159.8 (9, 9, 2, 2, &16800000) (last ID 8)
	Reads: 4 from &59F (&B3E00) - 159.8 (9, 9, 2, 2, &16800000) (first ID 8)


The Last Ninja (2)             - Track 159, unformatted
	NOTE: !Run, comment out the line "RUN <Last$Dir>.SetUp"


Lotus Turbo Challenge II/1 (9)	- Track 159, sector 0 bad CRC
	Reads: &400 from &31B (&C6C00) - 159.0 (10, 5, 2, 2, &C8000)
	Reads: &400 from &31C (&C7000) - 159.1 (10, 5, 2, 2, &C8000)
	Reads: &400 from &31C (&C7000) - 159.1 (10, 5, 2, 2, &C8000)


Magic Pockets (12)             - Track 105, sector 1 bad CRC
                               - Track 107, sector 1 bad CRC
                               - Track 109, sector 1 bad CRC
                               - Track 110, sector 1 bad CRC
                               - Track 158, 4 x 512 byte sectors 240, 241, 242, 243
                               - Track 158 is SD
                               - Track 158, sector 241 bad CRC and nested sector
                               - Track 158,  sector 242
                               - Track 158, sector 243 bad CRC
                               - Track 159, no sectors
	NOTE: loader crashes on RISC OS 3.7

	Reads: &200 from &9B3C (&1367800) - 158.240 (9, 250, 2, 1, &1388000)
	Reads: &200 from &9D3E (&1367C00) - 158.242 (9, 250, 2, 1, &1388000)
	Reads: &200 from &9B3C (&1367800) - 158.240 (9, 250, 2, 2, &1388000)
	Reads: &200 from &9D3E (&1367C00) - 158.242 (9, 250, 2, 2, &1388000)


Magnetoids (5)
	Verifies: &400 from &30C (&C3000) - 156.0 (10, 5, 2, 2, &C5800)
	Verifies: &400 from &311 (&C4400) - 157.0 (10, 5, 2, 2, &C5800)
	Verifies: &400 from &30C (&C3000) - 156.0 (10, 5, 2, 2, &C5800)

Manchester United/2 (8)		- Tracks 0 to 160, 10 x 512 byte sectors/trk ID's (1 - 10)
        Reads: All (9, 11, 2, 2, &E1000)

Minotaur (2)	    	      - Track 42 to 157, unformatted

	Reads: &1F0 from &9E0 (&9E000) - 158.0 (8, 16, 1, 2, &A0000)


Nevryon/1 (3)                  - Track 107, sector 2 bad CRC
Nevryon/2 (0)
	NOTE: loader crashes on RISC OS 3.7


PandoraBox/1 (15)              - Disc record has disc size as &CBF00 (162 tracks)
                               - Every track has a 6th sector: sector 5, 256 byte
                               - Track 0, sector 3 bad CRC
                               - Track 0, sector 4 bad CRC
                               - Track 156, sector 4 bad CRC
                               - Track 157, sectors 0, 1, 2, 3, 4 bad CRC
                               - Track 158, sectors 0, 1, 2, 3, 4 bad CRC
                               - Track 159, sectors 0, 1, 2, 3, 4 bad CRC
                               - Track 160, 161, 162 unformatted

	NOTE: !Run, comment out the line "*RMclear"
	NOTE: !Run, replace the line "*<Merlin$Dir>.!Setup" with "RMEnsure MemAlloc RMLoad <ADFFS$Dir>.MemAlloc"
	NOTE: !Run, add "SpriteSize 50" and "ScreenSize 240" below the MemAlloc line
	NOTE: Will reboot if floppy not found
        NOTE: Runs module "Gremlin" (its inside TheEarths) which claims software vectors and descrambles disc reads
		FileV - OS_File redirected to &460 (offset in module)
		ArgsV - OS_Args redirected to &108
		BPutV - OS_BPut redirected to &108
		GBPBV - OS_GBPB redirected to &108
		FindV - OS_Find redirected to &108
		CLIV  - OS_CLI redirected to &2B8
	NOTE: Needs RMA 194K, Screen 240K, Sprite 8K

	Reads: &400 from &31F (&C7C00) - 159.4 (10, 5, 2, 2, &CBF00)


Populous (9)                   - Track 159, sector 0 bad ID CRC
	!boot Reads: 4 from &31B (&C6C00) - 159.0 (10, 5, 2, 2)
	!boot Reads: 4 from &31C (&C7000) - 159.1 (10, 5, 2, 2)
	!boot Reads: 4 from &31F (&C7C00) - 159.4 (10, 5, 2, 2)


Powerband/1 (18)               - Every track has a 6th sector
                               - Tracks 0 to 141, sector 5, 256 byte with bad CRC
                               - Track 0, sector 3, 4, 5 have bad CRC
                               - Track 142, sectors 4, 5 have bad CRC
                               - Track 143 to 158, all 6 sectors have bad CRC
                               - Track 159, 16 x 256 byte sectors 0 > 15
	NOTE: !Run, add "Set Alias$L. LOAD" as the 1st line

	Reads: &300 from &4F9 (&4F900) - 159.1 (8, 8, 1, 2)
 	Reads: &400 from &316 (&C5800) - 157.5 (10, 5, 2, 2)

Powerband/2 (0)


Quark (5)
	  Reads: &400 from &30C (&C3000) - 156.0 (10, 5, 2, 2, &C8000)
	  Reads: &400 from &311 (&C4400) - 157.0 (10, 5, 2, 2, &C8000)


Repton 3 (0)
	NOTE: !BOOT add "*DIR ADFS::0.$" as the 1st line

	Reads: &100  from 0    (0)       - 0.0   (10, 5, 2, 2)
	Reads: &5778 from &2E9 (&BA400)  - 149.0 (10, 5, 2, 2)


Repton 4 (2)                   - Track 159, unformatted
	Reads or Verifies: 1 from &31B - 159.0 (10, 5, 2, 2)


Sensible Soccer/1 (12)         - Tracks 135, 137, 139, 141, 143, 145, 147, 149, 151, 153, 155, 157, sector 4 bad CRC
                               - Track 158 is 4 sectors of DD, followed by 4 sectors of SD
                               - SD Track 158, 4 x 512 byte sectors, 240, 241, 242, 243
                               - SD Track 158, sector 241 bad CRC and nested sector:
                               - SD Track 158,  sector 242
                               - SD Track 158, sector 243 bad CRC
                               - DD Track 158, 4 x 512 byte sectors, 240, 241, 242, 243
                               - DD Track 158, sector 241 bad CRC and nested sector:
                               - DD Track 158,  sector 242
                               - DD Track 158, sector 243 bad CRC
                               - Track 159, 9 x 512 byte sectors 1 > 9
                               - Track 159, sector 8 bad CRC
	NOTE: Hangs before it does the disc check on RISC OS 3.7

	Reads: &200 from &9B3C (&1367800) - 158.240 (9, 250, 2, 1, &1388000)
	Reads: &200 from &9B3E (&1367C00) - 158.242 (9, 250, 2, 1, &1388000)
	Reads: &200 from &9B3C (&1367800) - 158.240 (9, 250, 2, 2, &1388000)
	Reads: &200 from &9B3E (&1367C00) - 158.242 (9, 250, 2, 2, &1388000)


Slappit (4)			- Track 128, 1 sector with no data (ID is 0, 0, 0, 0)
				  data in GAP3
	Read track: &280 (&A0000) - 128 (10, 5, 2, 2, &C8000)


StarFighter 3000/1 (13)        - Track 159, 18 x 256 byte sectors 0 > 18
                               - Track 159, sector 4 has bad CRC
                               - Track 159, sector 8 has bad CRC and nested sector:
                               - Track 159,  sector 9
                               - Track 159, sector 12 has bad CRC and nested sector:
                               - Track 159,  sector 13
                               - Track 159, sector 16 has bad CRC and nested sector:
                               - Track 159,  sector 17
	Reads: 4    from &BCD (&BCD00) - 159.0  (8, 19, 2, 2, &BE000) to check for disc
	Reads: &400 from &BCD (&BCD00) - 159.0  (8, 19, 2, 2, &BE000)
	Reads: &100 from &BDF (&BDF00) - 159.18 (8, 19, 2, 2, &BE000)
	Reads: 8    from &BD1 (&BD100) - 159.4  (8, 19, 2, 2, &BE000)
	Reads: 4    from &BD2 (&BD200) - 159.5  (8, 19, 2, 2, &BE000)


StarFighter 3000/2 (0)         - Sectors are rotated one full sector from previous track


Stunt Racer 2000/1 (13)	       - Track 159 sector 4 CRC error
	Reads: &400  from &BCD (&BCD00) - 159.0  (8, 19, 2, 2, &BE000)
	Reads: &4000 from &BCD (&BCD00) - 159.0  (8, 19, 2, 2, &BE000)
	Reads: &1000 from &BDF (&BDF00) - 159.18 (8, 19, 2, 2, &BE000)
 	Reads: &800  from &BD1 (&BD100) - 159.4  (8, 19, 2, 2, &BE000)
	Reads: &400  from &BD2 (&BD200) - 159.5  (8, 19, 2, 2, &BE000)


The Wimp Game (2)              - Track 120, unformatted?


Wolfenstein/0 (11)             - Track 159, 25 sectors 0 > 9, sizes 3, 1, 1, 1, 2, 3, 1, 2, 1, 2, 3
                               - Track 159, sector 2 bad CRC
                               - Track 159, sector 5 bad CRC
                               - Track 159, sector 8 bad CRC
                               - Track 159, sector 9 bad CRC and nested sectors:
                               - Track 159,  sector 8, size 3
                               - Track 159,   sector 8, size 2 bad CRC
                               - Track 159,    sector 8, size 3
                               - Track 159,     sector 8, size 3
                               - Track 159,      sector 8, size 3
                               - Track 159,       sector 8, size 1 bad CRC
                               - Track 159,        sector 8, size 2 bad CRC
                               - Track 159,         sector 8, size 3
                               - Track 159,          sector 8, size 3
                               - Track 159,           sector 8, size 3
                               - Track 159,            sector 8, size 3
                               - Track 159,             sector 8, size 2
                               - Track 159,              sector 8, size 1
                               - Track 159,               sector 8, size 1 terminated early
Wolfenstein/1 (0)
Wolfenstein/2 (0)


World Class Leaderboard (6)    - Track 112, no sectors
                               - Track 158, 5 x 256 byte sectors 0 > 4
                               - Track 159, 5 x 256 byte sectors 0 > 4
	!boot Reads: 20 from &4F8 (&4F800) - 159.0 (8, 8, 2, 2)
	!boot Reads: 20 from &4FB (&4F800) - 159.2 (8, 8, 2, 2)



Xenon II/2 (8)			- Track 159, ID's 0, 1, <no ID>, 5, 6, 8
				- Track 159 sector 0 size 3 bad CRC
				- Track 159 sector 1 size 2 bad CRC
				- Track 159 sector <on ID> size 2 bad CRC
				- Track 159 sector 5 size 3 bad CRC
				- Track 159 sector 6 size 2 bad CRC
				- Track 159 sector 7 size 2 bad CRC

	Reads: &A00 from &637 (&31B80) - 159.1 (7, 10, 2, 2, &1900000)
	Reads: &400 from &639 (&31C80) - 159.3 (7, 10, 2, 2, &1900000)
	Reads: &400 from &63B (&63B00) - 159.5 (8, 10, 2, 2, &64000)
	Reads: &400 from &63C (&31E00) - 159.6 (7, 10, 2, 2, &1900000)

Zarch (12)                     - Track 80 has mixed density sectors
                               - Track 80, 4 x DD 512 byte sectors 240, 241, 242, 243
                               - Track 80, 4 x SD 512 byte sectors 240, 241, 242, 243
                               - Track 80, SD and DD sector 243 bad CRC
                               - Track 80, SD and DD sector 241 bad CRC and nested sector:
                               - Track 80,  SD and DD sector 242
                               - Track 81, unformatted track
                               - Tracks 82 to 159, 10 x 128 byte SD sectors 240 > 249
	NOTE: RISC OS 3.1 only, due to hardcoded screen address

	Reads: &200 from &2800 (&500000) - 40.240 (9, 250, 1, 1, &9C4000) - contains a scatter list
	depending on result it then tries:
	  Reads: &200 from &2801 (&500200) - 40.241 (9, 250, 1, 1, &9C4000)
	  Reads: &200 from &2800 (&500000) - 40.240 (9, 250, 1, 2, &9C4000)
	  Reads: &200 from &2801 (&500200) - 40.241 (9, 250, 1, 2, &9C4000)
	  Reads: &A00 from &5104 (&510400) - 86.100 (8, 250, 2, 1, &9C4000) << hanging
	or
	  Reads: &200 from &2802 (&500400) - 40.242 (9, 250, 1, 1, &9C4000) << correct
	  Reads: &200 from &2800 (&500000) - 40.240 (9, 250, 1, 2, &9C4000)
	  Reads: &200 from &2802 (&500400) - 40.242 (9, 250, 1, 2, &9C4000)
	  Reads: &A00 from &5104 (&510400) - 86.100 (8, 250, 2, 1, &9C4000) << hanging
	  ...
	  Reads: &A00 from &7620 - 126.0  (8, 250, 2, 1, &9C4000)

	&CA24 / &CD4C contains hard coded screen address (&1FED400 - MODE 13 bank 0 +&1400)
        &CD48         contains hard coded screen address (&1FD9400 - MODE 13 bank 1 +&1400)
	...needs to use !vdu=148:vdu!4=-1:SYS "OS_ReadVduVariables",vdu,vdu
	...entry point is DBA8 




DOCUMENTING
-----------

Haunted House (?)
	Reads: 4    from &BCD (&BCD00) - 159.0  (8, 19, 2, 2, &BE000)
	Reads: &100 from &BCD (&BCD00) - 159.0  (8, 19, 2, 2, &BE000)
	Reads: &100 from &BDF (&BDF00) - 159.18 (8, 19, 2, 2, &BE000)
	Reads: 8    from &BD1 (&BD100) - 159.4  (8, 19, 2, 2, &BE000)
	Reads: 4    from &BD2 (&BD200) - 159.5  (8, 19, 2, 2, &BE000)
	Reads: 4    from &BCD (&BCD00) - 159.0  (8, 19, 2, 2, &BE000)
	Reads: &400 from &BCD (&BCD00) - 159.0  (8, 19, 2, 2, &BE000)
	Reads: &100 from &BDF (&BDF00) - 159.18 (8, 19, 2, 2, &BE000)
	Reads: 8    from &BD1 (&BD100) - 159.4  (8, 19, 2, 2, &BE000)
	Reads: 4    from &BD2 (&BD200) - 159.5  (8, 19, 2, 2, &BE000)


Cyber Chess (?)
	Reads: 4    from &BCD (&BCD00) - 159.0 (8, 19, 2, 2, &BE000)
	Reads: &400 from &BCD (&BCD00) - 159.0 (8, 19, 2, 2, &BE000)


Enter The Realm (?)
	Reads: &400 from &312 (&C4800) - 157.1 (10, 5, 2, 2, &CBF00)


Lemmings (9?)


Oh, No! More Lemmings (9)


Chock Away Extra Missions/1 (10)	- Tracks 40 to 55, extra 256 byte sector 6
				- Tracks 60 to 71, extra 256 byte sector 6

	Reads: &100  from &4F1 (&4F100) - 60.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &506 (&50600) - 61.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &51B (&51B00) - 62.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &530 (&53000) - 63.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &545 (&54500) - 64.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &55A (&55A00) - 65.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &56F (&56F00) - 66.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &584 (&58400) - 67.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &599 (&59900) - 68.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &5AE (&5AE00) - 69.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &5C3 (&5C300) - 70.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &5D8 (&5D800) - 71.5  (8, 21, 2, 2, &69000)
	Reads: &20   from &34D (&34D00) - 40.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &34D (&34D00) - 40.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &362 (&36200) - 41.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &377 (&37700) - 42.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &38C (&38C00) - 43.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &3A1 (&3A100) - 44.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &3B6 (&3B600) - 45.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &3CB (&3CB00) - 46.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &3E0 (&3E000) - 47.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &3F5 (&3F500) - 48.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &40A (&40A00) - 49.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &41F (&41F00) - 50.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &434 (&43400) - 51.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &449 (&44900) - 52.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &45E (&45E00) - 53.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &473 (&47300) - 53.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &488 (&48800) - 54.5  (8, 21, 2, 2, &69000)
	Reads: &721A from &2F8 (&BE000) - 152.0 (10, 5, 2, 2, &C8000)
	Reads: &C8   from &2A7 (&A9C00) - 135.4 (10, 5, 2, 2, &C8000)
	Reads: &C8   from &2A6 (&A9800) - 135.3 (10, 5, 2, 2, &C8000)
	Reads: &9C40 from &2A8 (&AA000) - 136.0 (10, 5, 2, 2, &C8000)
	Reads: &9C40 from &2D0 (&B4000) - 144.0 (10, 5, 2, 2, &C8000)

	NOTE: Uses ZFiler module which claims software vectors and descrambles disc reads
		FileV - OS_File redirected to &290 (offset in module)
		ArgsV - OS_Args redirected to &308
		BGetV - OS_BGet redirected to &648 
		BPutV - OS_BPut redirected to &630
		GBPBV - OS_GBPB redirected to &408
		FindV - OS_Find redirected to &450


Chock Away Extra Missions/3 (10)	- Tracks 40 to 55, extra 256 byte sector 6
				- Tracks 60 to 71, extra 256 byte sector 6

	Reads: &100  from &4F1 (&4F100) - 60.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &506 (&50600) - 61.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &51B (&51B00) - 62.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &530 (&53000) - 63.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &545 (&54500) - 64.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &55A (&55A00) - 65.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &56F (&56F00) - 66.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &584 (&58400) - 67.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &599 (&59900) - 68.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &5AE (&5AE00) - 69.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &5C3 (&5C300) - 70.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &5D8 (&5D800) - 71.5  (8, 21, 2, 2, &69000)
	Reads: &20   from &34D (&34D00) - 40.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &34D (&34D00) - 40.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &362 (&36200) - 41.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &377 (&37700) - 42.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &38C (&38C00) - 43.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &3A1 (&3A100) - 44.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &3B6 (&3B600) - 45.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &3CB (&3CB00) - 46.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &3E0 (&3E000) - 47.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &3F5 (&3F500) - 48.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &40A (&40A00) - 49.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &41F (&41F00) - 50.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &434 (&43400) - 51.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &449 (&44900) - 52.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &45E (&45E00) - 53.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &473 (&47300) - 54.5  (8, 21, 2, 2, &69000)
	Reads: &100  from &488 (&48800) - 55.5  (8, 21, 2, 2, &69000)
	Reads: &802B from &2FF (&BFC00) - 153.2 (10, 5, 2, 2, &C8000)
	Reads: &C8   from &2C1 (&B0400) - 141.0 (10, 5, 2, 2, &C8000)
	Reads: &F220 from &2C2 (&B0800) - 141.1 (10, 5, 2, 2, &C8000)

	NOTE: Uses ZFiler module which claims software vectors and descrambles disc reads
		FileV - OS_File redirected to &290 (offset in module)
		ArgsV - OS_Args redirected to &308
		BGetV - OS_BGet redirected to &648 
		BPutV - OS_BPut redirected to &630
		GBPBV - OS_GBPB redirected to &408
		FindV - OS_Find redirected to &450

Saloon Cars (10)
	Reads: &100 from &4F100 - 60.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &50600 - 61.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &51B00 - 62.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &53000 - 63.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &54500 - 64.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &55A00 - 65.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &56F00 - 66.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &58400 - 67.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &59900 - 68.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &5AE00 - 69.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &5C300 - 70.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &5D800 - 71.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &34D00 - 40.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &36200 - 41.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &37700 - 42.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &38C00 - 43.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &3A100 - 44.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &3B600 - 45.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &3CB00 - 46.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &3E000 - 47.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &3F500 - 48.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &40A00 - 49.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &41F00 - 50.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &43400 - 51.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &44900 - 52.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &45E00 - 53.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &47300 - 54.5 (8, 21, 2, 2, &69000)
	Reads: &100 from &48800 - 55.5 (8, 21, 2, 2, &69000)
	Reads: &20    from &34D00 - 40.5 (8, 21, 2, 2, &69000)
	Reads: &14238 from &5EC00 - 37.9 (10, 5, 2, 2, &C8000)
	Reads: &99E   from &A1400 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &A04   from &A0800 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &A15   from &9FC00 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &17E8  from &9E400 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &D7A   from &4A800 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &7E6A  from &56C00 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &DBD   from &49800 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &1A0E  from &9C800 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &8B6   from &73000 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &15C5E from &73C00 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &B229  from &A2000 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &4DF3  from &C3000 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &4EC8  from &44800 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &A9A1  from &B8400 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &AE33  from &AD400 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &B95   from &4B800 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &2E10  from &98400 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &214E  from &89C00 - ?.? (10, 5, 2, 2, &C8000)
	Reads: &10EE  from &9B400 - ?.? (10, 5, 2, 2, &C8000)

	NOTE: Uses ZFiler module which claims software vectors and descrambles disc reads




The Crystal Rainforest (20)
	Reads: &3FF from &1000 - 0.4  (9, 10, 2, 2, &C8000)
	Reads: &3FF from &1000 - 0.4  (9, 10, 2, 2, &C8000)
danielj
Posts: 64
Joined: Sun May 12, 2013 9:08 pm

Re: Protection methods in use

Post by danielj »

Thanks, that's really useful. With kryoflux streams it should be possible to use these to help put together IPFs. I was just trying to find the programmer's reference which you said was on the FTP site, but I don't seem to be able to see it anywhere?

d.
JonAbbott
Posts: 2955
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: Protection methods in use

Post by JonAbbott »

I may have forgotten to give you access, I'll check tomorrow evening when I'm back. If there's any you'd like me to Kryoflux, let me know.
danielj
Posts: 64
Joined: Sun May 12, 2013 9:08 pm

Re: Protection methods in use

Post by danielj »

Thanks, Will do!

I've been having a bit of a chat with a few people. It seems that although IPF is capable of storing FM data, no one's actually extended the container to do so and the library to read them won't handle FM (or GCR) encoded data either - yet, although that yet was at least 12 months ago... Read into that what you will...

d.
JonAbbott
Posts: 2955
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: Protection methods in use

Post by JonAbbott »

Seems like a rather large omission to me, considering a 1772 supports it and its actively used in disc protection.
Post Reply