CX Herakles (c) Controle X by J.-L. Besnard & H. Caminati This is an accounting program. The manual says that a key must be entered or the program will self-destruct. The boot program is standard: ProDOS > BASIC.System > Startup > Boute How to crack? At address $93C: 4C -> 60, or $93D: 98 -> AE, or $931: 0A -> 09 Alternatively, on disk, with Disk Fixer, ProDOS-mode Follow file BOUTE, At file offset $930: 0A -> 09 Write the sector back onto disk. Reboot and... enjoy, LoGo 6/2026 Boot trace 00/092B: A9 D8 LDA #D8 00/092D: 8D F1 03 STA 03F1 00/0930: D0 0A BNE 093C ; check file 00/0932: 68 PLA 00/0933: A8 TAY 00/0934: 68 PLA 00/0935: A6 DF LDX DF 00/0937: 9A TXS 00/0938: 48 PHA 00/0939: 98 TYA 00/093A: 48 PHA 00/093B: 60 RTS 00/093C: 4C 98 09 JMP 0998 ; shall we enter the key? 00/093F: 20 00 BF JSR BF00 00/0942: C9 C9 00/0943: 50 09 0950 00/0945: 20 00 BF JSR BF00 00/0948: CA CA 00/0949: 54 09 0954 00/094B: 60 RTS ... 00/0998: 20 00 BF JSR BF00 ; DOES COMPLAN EXIST? 00/099B: C8 C8 00/099C: 8A 09 098A 00/099E: D0 0F BNE 09AF ; NO 00/09A0: 20 62 09 JSR 0962 ; YES, CLOSE 00/09A3: 20 00 BF JSR BF00 ; OPEN MEMO 00/09A6: C8 C8 00/09A7: 84 09 0984 00/09A9: D0 03 BNE 09AE ; DOES NOT EXIST, EXIT 00/09AB: 4C 2B 0B JMP 0B2B ; VEUILLEZ CONSULTER 00/09AE: 60 RTS 00/09AF: 20 62 09 JSR 0962 ; CLOSE 00/09B2: 20 00 BF JSR BF00 ; OPEN MEMO 00/09B5: C8 C8 00/09B6: 84 09 0984 00/09B8: F0 03 BEQ 09BD ; CHECK IF OK 00/09BA: 4C 2B 0B JMP 0B2B ; VEUILLEZ CONSULTER 00/09BD: AD 89 09 LDA 0989 00/09C0: 8D 55 09 STA 0955 00/09C3: 8D 51 09 STA 0951 00/09C6: 8D 6A 09 STA 096A 00/09C9: 20 3F 09 JSR 093F ; READ MEMO AT $8E00 00/09CC: A9 00 LDA #00 ; calc CRC 00/09CE: 85 08 STA 08 00/09D0: A9 8E LDA #8E 00/09D2: 85 09 STA 09 00/09D4: A9 1F LDA #1F ; length 00/09D6: 85 18 STA 18 00/09D8: A0 00 LDY #00 ; index 00/09DA: 84 19 STY 19 00/09DC: B1 08 LDA (08),Y 00/09DE: 29 5F AND #5F 00/09E0: C9 40 CMP #40 00/09E2: 90 09 BCC 09ED {+09} 00/09E4: C9 5B CMP #5B 00/09E6: B0 05 BCS 09ED {+05} 00/09E8: 18 CLC 00/09E9: 65 19 ADC 19 00/09EB: 85 19 STA 19 00/09ED: C8 INY 00/09EE: C4 18 CPY 18 00/09F0: 90 EA BCC 09DC {-16} 00/09F2: B9 00 8E LDA 8E00,Y 00/09F5: C8 INY 00/09F6: C5 19 CMP 19 00/09F8: F0 03 BEQ 09FD {+03} 00/09FA: 4C 2B 0B JMP 0B2B ; VEUILLEZ CONSULTER 00/09FD: B9 00 8E LDA 8E00,Y 00/0A00: F0 F8 BEQ 09FA ; EMPTY, VEUILLEZ CONSULTER 00/0A02: 84 CF STY CF 00/0A04: C9 B4 CMP #B4 00/0A06: F0 0F BEQ 0A17 ; 180: ENTER KEY 00/0A08: B0 06 BCS 0A10 ; ABOVE, DONE 00/0A0A: 18 CLC 00/0A0B: 69 01 ADC #01 00/0A0D: 99 00 8E STA 8E00,Y 00/0A10: 8D 02 03 STA 0302 00/0A13: 20 5C 09 JSR 095C ; WRITE & CLOSE 00/0A16: 60 RTS ENTER KEY 00/0A17: A9 0C LDA #0C ; VEUILLEZ ENTRER LA CLE 00/0A19: 20 C1 FB JSR FBC1 00/0A1C: A0 00 LDY #00 00/0A1E: B9 B6 0A LDA 0AB6,Y 00/0A21: F0 07 BEQ 0A2A {+07} 00/0A23: 20 ED FD JSR FDED 00/0A26: C8 INY 00/0A27: 4C 1E 0A JMP 0A1E 00/0A2A: A9 00 LDA #00 00/0A2C: 85 D6 STA D6 00/0A2E: 85 D7 STA D7 00/0A30: 85 CE STA CE 00/0A32: AA TAX 00/0A33: 8D 10 C0 STA C010 00/0A36: 20 0C FD JSR FD0C ; ENTER KEY 00/0A39: C9 8D CMP #8D 00/0A3B: F0 1A BEQ 0A57 {+1A} 00/0A3D: C9 B0 CMP #B0 00/0A3F: 90 F2 BCC 0A33 {-0E} 00/0A41: C9 BA CMP #BA 00/0A43: B0 EE BCS 0A33 {-12} 00/0A45: 20 ED FD JSR FDED 00/0A48: 38 SEC 00/0A49: E9 B0 SBC #B0 00/0A4B: A6 D7 LDX D7 ; index 0..2 00/0A4D: 95 F9 STA F9,X ; save digit entered 00/0A4F: E6 D7 INC D7 00/0A51: A5 D7 LDA D7 00/0A53: C9 03 CMP #03 00/0A55: D0 DC BNE 0A33 ; loop if not 3 Check key 00/0A57: A4 D7 LDY D7 00/0A59: 88 DEY 00/0A5A: B9 F9 00 LDA 00F9,Y 00/0A5D: 85 CE STA CE 00/0A5F: 88 DEY 00/0A60: C0 FF CPY #FF 00/0A62: F0 1B BEQ 0A7F {+1B} 00/0A64: A2 09 LDX #09 00/0A66: B9 F9 00 LDA 00F9,Y 00/0A69: 18 CLC 00/0A6A: 79 F9 00 ADC 00F9,Y 00/0A6D: CA DEX 00/0A6E: D0 F9 BNE 0A69 {-07} 00/0A70: 18 CLC 00/0A71: 65 CE ADC CE 00/0A73: 85 CE STA CE 00/0A75: 88 DEY 00/0A76: C0 FF CPY #FF 00/0A78: F0 05 BEQ 0A7F {+05} 00/0A7A: A2 63 LDX #63 00/0A7C: 4C 66 0A JMP 0A66 00/0A7F: C5 19 CMP 19 00/0A81: D0 03 BNE 0A86 {+03} 00/0A83: 4C AE 0A JMP 0AAE 00/0A86: A5 D6 LDA D6 00/0A88: F0 05 BEQ 0A8F {+05} 00/0A8A: A0 20 LDY #20 00/0A8C: 4C 2B 0B JMP 0B2B 00/0A8F: E6 D6 INC D6 00/0A91: A9 8D LDA #8D 00/0A93: 20 ED FD JSR FDED 00/0A96: A9 0E LDA #0E 00/0A98: 20 C1 FB JSR FBC1 00/0A9B: A0 00 LDY #00 00/0A9D: 84 D7 STY D7 00/0A9F: B9 F7 0A LDA 0AF7,Y ; WRONG KEY, TRY AGAIN 00/0AA2: F0 07 BEQ 0AAB {+07} 00/0AA4: 20 ED FD JSR FDED 00/0AA7: C8 INY 00/0AA8: 4C 9F 0A JMP 0A9F 00/0AAB: 4C 36 0A JMP 0A36 00/0AAE: A4 CF LDY CF 00/0AB0: B9 00 8E LDA 8E00,Y 00/0AB3: 4C 0A 0A JMP 0A0A 00/0AB6: C4 EF CPY EF 00/0AB8: EE EE E5 INC E5EE ; DONNEZ LA CLE 00/0ABB: FA PLX 00/0ABC: A0 EC LDY #EC 00/0ABE: E1 A0 SBC (A0,X) 00/0AC0: E3 EC SBC EC,S 00/0AC2: FB XCE 00/0AC3: A0 F1 LDY #F1 00/0AC5: F5 E5 SBC E5,X Contact your reseller 00/0B2B: A9 00 LDA #00 00/0B2D: 20 0D 0A JSR 0A0D 00/0B30: 20 78 09 JSR 0978 00/0B33: A9 15 LDA #15 00/0B35: 20 00 C3 JSR C300 00/0B38: A9 0E LDA #0E 00/0B3A: 20 C1 FB JSR FBC1 00/0B3D: A0 00 LDY #00 00/0B3F: B9 4B 0B LDA 0B4B,Y 00/0B42: F0 2C BEQ 0B70 {+2C} 00/0B44: 20 ED FD JSR FDED 00/0B47: C8 INY 00/0B48: 4C 3F 0B JMP 0B3F 00/0B4B: A0 A0 LDY #A0 ; VEUILLEZ CONSULTER... 00/0B4D: A0 D6 LDY #D6 00/0B4F: C5 D5 CMP D5 00/0B51: C9 CC CMP #CC 00/0B53: CC C5 DA CPY DAC5 00/0B56: A0 C3 LDY #C3 00/0B58: CF CE D3 D5 CMP D5D3CE 00/0B5C: CC D4 C5 CPY C5D4 00/0B5F: D2 A0 CMP (A0) 00/0B61: D6 CF DEC CF,X 00/0B63: D4 D2 PEI D2 00/0B65: C5 A0 CMP A0 00/0B67: D2 C5 CMP (C5) 00/0B69: D6 C5 DEC C5,X 00/0B6B: CE C4 C5 DEC C5C4 00/0B6E: D5 D2 CMP D2,X 00/0B70: 60 RTS ; RETURN