------------The Quarter Mile----------- A 4am crack 2015-09-10 --------------------------------------- Name: The Quarter Mile Version: 4.1 Genre: educational Year: 1995 Publisher: Barnum Software Media: 2 double-sided 5.25-inch disks OS: ProDOS 1.7 Previous cracks: none Identical cracks: Graphic Converter (crack no. 439) Force and Motion (crack no. 253) Side A is protected but bootable. Side B is unprotected but unbootable. Each disk is like that. Life is like that. This is not a poem. The disks I have are labeled "disk 2 of 5" and "disk 3 of 5," which implies that I do not have the entire series. Side A of each disk is bootable, and each disk appears to function independently. The physical label on each disk claims this is version 4.1, published in 1995. The graphical title screen and the main menu say version 4.0 and 1992. The disk catalog contains many files timestamped August 17, 1995. ~ Chapter 0 In Which Various Automated Tools Fail In Interesting Ways COPYA immediate disk read error Locksmith Fast Disk Backup unable to read T01-T22 (T00 is OK) EDD 4 bit copy (no sync, no count) no errors, but copy grinds on boot Copy ][+ nibble editor T00 -> standard prologues T01+ -> modified address prologue ("AB BF D5") also modified address epilogue (not sure what exactly, not consistent?) Disk Fixer T00 looks like ProDOS, including a ProDOS disk catalog ["O" -> "Input/Output Control"] set Address Prologue to "AB BF D5" turn off epilogue checking other tracks readable Why didn't COPYA work? modified prologue and epilogue Why didn't Locksmith FDB work? modified prologue and epilogue Why didn't my EDD copy work? I don't know. Maybe a nibble check during boot? Converting the disk to a standard format will be tricky. Super Demuffin doesn't have an option to ignore epilogue bytes entirely. (I would feel uncomfortable doing that anyway -- what if the original disk had a legitimate bad sector?) Advanced Demuffin requires a DOS 3.3-shaped RWTS, but this disk uses ProDOS. The automated tools I've built don't work well on ProDOS. (Note to self: fix that someday.) Next steps: 1. Boot trace the original disk to capture the PRODOS file in memory 2. Use the RWTS inside the PRODOS file to build a DOS-shaped RWTS that can read the original disk 3. Use Advanced Demuffin to convert the disk to a standard format 4. Patch the bootloader and/or the PRODOS file to be able to read a standard format disk 5. Find and disable the nibble check ~ Chapter 1 In Which We Ponder Whether Two Heads Are Better Than One [S6,D1=original disk] [S5,D1=my work disk] ]PR#5 CAPTURING BOOT0 ...reboots slot 6... ...reboots slot 5... SAVING BOOT0 ]BLOAD BOOT0,A$800 ]CALL -151 *801L . . nothing suspicious, which is, in and . of itself, quite suspicious . ; jump to PRODOS file once loaded 08FC- 4C 00 20 JMP $2000 OK, let's interrupt the boot there. *9600 At $B8, load "RWTS LIKE PRODOS" from drive 1 ["6" to switch to slot 6] ["C" to convert disk] --v-- ADVANCED DEMUFFIN 1.5 (C) 1983, 2014 ORIGINAL BY THE STACK UPDATES BY 4AM =======PRESS ANY KEY TO CONTINUE======= TRK:................................... +.5: 0123456789ABCDEF0123456789ABCDEF012 SC0:................................... SC1:................................... SC2:................................... SC3:................................... SC4:................................... SC5:................................... SC6:................................... SC7:................................... SC8:................................... SC9:................................... SCA:................................... SCB:................................... SCC:................................... SCD:................................... SCE:................................... SCF:................................... ======================================= 16SC $00,$00-$22,$0F BY1.0 S6,D1->S6,D2 --^-- [S7,D1=ProDOS hard drive] ]PR#7 ]CAT,S6,D2 /ADDITION. NAME TYPE BLOCKS MODIFIED PRODOS SYS 32 22-MAR-89 COM.SYSTEM SYS 5 1-MAY-95 TP BIN 17 15-APR-92 PROGA BIN 32 5-MAY-95 P BIN 39 5-MAY-95 TOPICS.S TXT 1 29-APR-95 X DIR 2 17-AUG-95 ZA1000 DIR 1 17-AUG-95 ZA1001 DIR 1 17-AUG-95 ZA1002 DIR 1 17-AUG-95 ZA1003 DIR 1 17-AUG-95 ZA1004 DIR 1 17-AUG-95 ZA1005 DIR 1 17-AUG-95 ZA1006 DIR 1 17-AUG-95 ZA1007 DIR 1 17-AUG-95 ZA1008 DIR 1 17-AUG-95 ZA1009 DIR 1 17-AUG-95 ZA1010 DIR 1 17-AUG-95 ZA1101 DIR 1 17-AUG-95 ZA1102 DIR 1 17-AUG-95 ZA1103 DIR 1 17-AUG-95 ZA1104 DIR 1 17-AUG-95 ZA1105 DIR 1 17-AUG-95 ZA1106 DIR 1 17-AUG-95 ZA1107 DIR 1 17-AUG-95 ZA1108 DIR 1 17-AUG-95 ZA1109 DIR 1 ZA1110 DIR 1 ZA1120 DIR 1 17-AUG-95 ZA1200 DIR 1 17-AUG-95 BLOCKS FREE: 55 BLOCKS USED: 225 ]PREFIX /ADDITION. ]-COM.SYSTEM ...works... ~ Chapter 3 In Which Our Adventure Comes To A Sudden But Satisfying Conclusion [S6,D1=demuffin'd disk] ]PR#6 ...program boots and runs... Wait, what? Why did the demuffin'd copy work? Advanced Demuffin wrote out the data from each sector onto a standard disk that uses "D5 AA 96" prologue and "DE AA EB" epilogue. The RWTS finds the first $D5, doesn't find a timing bit, but it finds the remaining standard prologue (AA 96) and decides that it found a valid address field. Thus, no RWTS patches are necessary. But then why didn't the EDD copy work? EDD preserved the original address prologue but not the timing bits. The prologue checker finds the $D5 (at $55B0) but no timing bit after it (at $55B8), so the disk can't read itself. There was never any separate nibble check; the structure of the disk itself is designed to foil bit copiers. Side A of the second disk has identical protection. Side B of each disk is unprotected. Quod erat liberandum. --------------------------------------- A 4am crack No. 446 ------------------EOF------------------