Index du Forum
IDENTIFICATION SERVEUR : 10.0.97.65 - CLIENT : 54.224.83.221

 FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres   Groupes d'utilisateursGroupes d'utilisateurs   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

TeleBASIC v1.0 v1.2 (Club Apple, 1985)

 
Poster un nouveau sujet   Répondre au sujet     Index du Forum -> PROTECTION MALEFIQUE
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
toinet
Site Admin


Inscrit le: 15 Juin 2007
Messages: 2937
Localisation: Le Chesnay, France

MessagePosté le: Lun 01 Jan 2018, 17:31    Sujet du message: TeleBASIC v1.0 v1.2 (Club Apple, 1985) Répondre en citant

#989 - Written by Joel Bernard in 1984 and published by Club Apple in 1985. This is a set of telecom (eg videotex) routines for the Applesoft basic.
Joel Bernard is known for his telecommunications programs published by Version Soft.

Note: this software has the MEANEST DOS 3.3 protection routine: it inverts the read and write commands of the RWTS. If you call a read sector, it will write it. It you ask for a write, it will read the sector. So... always protect your disks!

Disk structure
Nearly standard DOS 3.3 16-sec disk

Protection type
Change of markers
- T0-T2: D5AA96 F2AA / D5AAAD F2AA
- T3-T22: D5AA96 F2AA / AAD5AD F2AA
- Sort of desync of data field, see $BF68
- RWTS command change: 01 is 02, 02 is 01 (when you read, you write!) at $BDB5: EOR #$01, init $B7F4 at $B725 where A9 02 8D F4 B7

How to copy
Boot my copy disk
Launch Advanced demuffin 1.4
Press B to boot with Télébasic v1.0 floppy in D1
Write protect your original disk!!!!
Enter monitor
BDB5:49 01 => EA EA
That is MANDATORY or you will lose your original disk!!!!

How to normalize
Boot my copy disk
Launch Disk Fixer
Code:

T0/S1/26: 02 -> 01
T0/S1/68: 02 -> 01
T0/S3/35:F2 -> DE
T0/S3/91:F2 -> DE
T0/S7/0:4C C2 BE EA -> 84 48 85 49
T0/S7/B5:49 01 -> EA EA
T1/SE/27: 01 -> 02
T1/SE/3E: 01 -> 02
T1/SE/B2: 01 -> 02
T1/SE/B6: 02 -> 01
T1/SE/E0: 02 -> 01
T1/SE/F8: 02 -> 01
T1/SE/FC: 01 -> 02
T1/SF/31: 02 -> 01
T1/SF/41: 01 -> 02
T1/SF:5B:29 01 0A EA -> C9 02 D0 06

The changes on T1/SE and T1/SF are in the File Manager part of DOS 3.3. I invite readers to buy the following book: Apple II DOS 3.3 guide du programmeur, by Marcel Cottini, published by Sybex.

Why is it important to normalize the disk
Once the markers and data read routines changed, one could stop here. I've decided to go further because of the RWTS. If one has wanted to use the RWTS of Telebasic in its own programs or to copy other disks, they would have been destroyed. For instance, Advanced demuffin uses the read command (01) to read an original disk. With that RWTS, it would have written sectors instead of reading them!!!

The disk image is available at http://www.brutaldeluxe.fr/crack/

Reboot and... enjoy (and write protect your original disks)

LoGo
1/2018


Derničre édition par toinet le Lun 01 Jan 2018, 17:36; édité 1 fois
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
toinet
Site Admin


Inscrit le: 15 Juin 2007
Messages: 2937
Localisation: Le Chesnay, France

MessagePosté le: Lun 01 Jan 2018, 17:32    Sujet du message: Répondre en citant

The modified data field read routine at $BF68

Code:

The $BF68 code.
The timing bits added in the data field!

----------- DISASSEMBLY MODE -----------
0068:A0 56          LDY   #$56         
006A:BD 8C C0       LDA   $C08C,X       ; read AD
006D:10 FB          BPL   $006A         
006F:C9 AD          CMP   #$AD         
0071:D0 E7          BNE   $005A         
0073:A9 00          LDA   #$00         
0075:EA             NOP                 
0076:BD 8C C0       LDA   $C08C,X       ; and AD
0079:10 FB          BPL   $0076         
007B:C9 AD          CMP   #$AD         
007D:D0 E8          BNE   $0067         
007F:4C 82 BF       JMP   $BF82         ; lose
0082:BD 8C C0       LDA   $C08C,X       ; skip a nibble
0085:10 FB          BPL   $0082         
0087:BD 8D C0       LDA   $C08D,X       ; more timing pleaese
008A:20 C1 BE       JSR   $BEC1         ; skip 6+6 cycles
008D:BD 8C C0       LDA   $C08C,X       ; and read
0090:EA             NOP                 ; 2 cycles and...
0091:EA             NOP                 ; 2
0092:EA             NOP                 ; 2
0093:EA             NOP                 ; 2
0094:EA             NOP                 ; 2
0095:EA             NOP                 ; 2
... The rest is the standard data read routine
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
toinet
Site Admin


Inscrit le: 15 Juin 2007
Messages: 2937
Localisation: Le Chesnay, France

MessagePosté le: Lun 01 Jan 2018, 17:34    Sujet du message: Répondre en citant

The RWTS code at $B7AB, the one that switches between the read and write commands. The DOS 3.3 was modified to read data with a command of 02 (instead of 1) and to write data with a command code of 01 (instead of 2)

Code:

T0/S7
----------- DISASSEMBLY MODE -----------
00AB:A0 0C          LDY   #$0C         
00AD:B1 48          LDA   ($48),Y       
00AF:F0 5C          BEQ   $010D         
00B1:C9 04          CMP   #$04         
00B3:F0 5A          BEQ   $010F         ; The MEAN code EOR
00B5:49 01          EOR   #$01          ; Read becomes write
00B7:6A             ROR                 ; Write becomes read!
00B8:08             PHP                 
00B9:B0 03          BCS   $00BE         
00BB:20 00 B8       JSR   $B800         
00BE:A0 30          LDY   #$30         
00C0:8C 78 05       STY   $0578         
00C3:AE F8 05       LDX   $05F8         
00C6:20 44 B9       JSR   $B944         
00C9:90 24          BCC   $00EF         
00CB:CE 78 05       DEC   $0578         
00CE:10 F3          BPL   $00C3         
00D0:AD 78 04       LDA   $0478         
00D3:48             PHA                 
00D4:A9 60          LDA   #$60         
00D6:20 A8 BE       JSR   $BEA8         
00D9:CE F8 06       DEC   $06F8         
00DC:F0 28          BEQ   $0106         
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
toinet
Site Admin


Inscrit le: 15 Juin 2007
Messages: 2937
Localisation: Le Chesnay, France

MessagePosté le: Lun 01 Jan 2018, 17:34    Sujet du message: Répondre en citant

The file manager part where 01 and 02 were exchanged

Code:

T1/SE from Telebasic DOS 3.3
----------- DISASSEMBLY MODE -----------
001D:2C D5 B5       BIT   $B5D5         
0020:70 01          BVS   $0023         
0022:60             RTS                 
0023:20 E4 AF       JSR   $AFE4         
0026:A9 01          LDA   #$01          ;
0028:20 52 B0       JSR   $B052         
002B:A9 BF          LDA   #$BF         
002D:2D D5 B5       AND   $B5D5         
0030:8D D5 B5       STA   $B5D5         
0033:60             RTS                 
0034:AD D5 B5       LDA   $B5D5         
0037:30 01          BMI   $003A         
0039:60             RTS                 
003A:20 4B AF       JSR   $AF4B         
003D:A9 01          LDA   #$01          ;
003F:20 52 B0       JSR   $B052         
0042:A9 7F          LDA   #$7F         
0044:2D D5 B5       AND   $B5D5         
0047:8D D5 B5       STA   $B5D5         
004A:60             RTS                 
004B:AD C9 B5       LDA   $B5C9         
004E:8D F0 B7       STA   $B7F0         
0051:AD CA B5       LDA   $B5CA         
0054:8D F1 B7       STA   $B7F1         
0057:AE D3 B5       LDX   $B5D3         
005A:AC D4 B5       LDY   $B5D4         
005D:60             RTS                 
005E:08             PHP                 
005F:20 34 AF       JSR   $AF34         
0062:20 4B AF       JSR   $AF4B         
0065:20 0C AF       JSR   $AF0C         
0068:28             PLP                 
0069:B0 09          BCS   $0074         
006B:AE D1 B5       LDX   $B5D1         
006E:AC D2 B5       LDY   $B5D2         
0071:4C B5 AF       JMP   $AFB5         
0074:A0 01          LDY   #$01         
0076:B1 42          LDA   ($42),Y       
0078:F0 08          BEQ   $0082         
007A:AA             TAX                 
007B:C8             INY                 
007C:B1 42          LDA   ($42),Y       
007E:A8             TAY                 
007F:4C B5 AF       JMP   $AFB5         
0082:AD BB B5       LDA   $B5BB         
0085:C9 04          CMP   #$04         
0087:F0 02          BEQ   $008B         
0089:38             SEC                 
008A:60             RTS                 
008B:20 44 B2       JSR   $B244         
008E:A0 02          LDY   #$02         
0090:91 42          STA   ($42),Y       
0092:48             PHA                 
0093:88             DEY                 
0094:AD F1 B5       LDA   $B5F1         
0097:91 42          STA   ($42),Y       
0099:48             PHA                 
009A:20 3A AF       JSR   $AF3A         
009D:20 D6 B7       JSR   $B7D6         
00A0:A0 05          LDY   #$05         
00A2:AD DE B5       LDA   $B5DE         
00A5:91 42          STA   ($42),Y       
00A7:C8             INY                 
00A8:AD DF B5       LDA   $B5DF         
00AB:91 42          STA   ($42),Y       
00AD:68             PLA                 
00AE:AA             TAX                 
00AF:68             PLA                 
00B0:A8             TAY                 
00B1:A9 01          LDA   #$01          ;
00B3:D0 02          BNE   $00B7         
00B5:A9 02          LDA   #$02          ;
00B7:8E D3 B5       STX   $B5D3         
00BA:8C D4 B5       STY   $B5D4         
00BD:20 52 B0       JSR   $B052         
00C0:A0 05          LDY   #$05         
00C2:B1 42          LDA   ($42),Y       
00C4:8D DC B5       STA   $B5DC         
00C7:18             CLC                 
00C8:6D DA B5       ADC   $B5DA         
00CB:8D DE B5       STA   $B5DE         
00CE:C8             INY                 
00CF:B1 42          LDA   ($42),Y       
00D1:8D DD B5       STA   $B5DD         
00D4:6D DB B5       ADC   $B5DB         
00D7:8D DF B5       STA   $B5DF         
00DA:18             CLC                 
00DB:60             RTS                 
00DC:20 E4 AF       JSR   $AFE4         
00DF:A9 02          LDA   #$02          ;
00E1:4C 52 B0       JMP   $B052         
00E4:AC CB B5       LDY   $B5CB         
00E7:AD CC B5       LDA   $B5CC         
00EA:8C F0 B7       STY   $B7F0         
00ED:8D F1 B7       STA   $B7F1         
00F0:AE D6 B5       LDX   $B5D6         
00F3:AC D7 B5       LDY   $B5D7         
00F6:60             RTS                 
00F7:A9 02          LDA   #$02          ;
00F9:D0 02          BNE   $00FD         
00FB:A9 01          LDA   #$01          ;
00FD:AC C3 AA       LDY   $AAC3         
0100:8C F0 B7       STY   $B7F0         
0103:AC C4 AA       LDY   $AAC4         
0106:8C F1 B7       STY   $B7F1         
0109:AE FA B5       LDX   $B5FA         
010C:A0 00          LDY   #$00         
010E:4C 52 B0       JMP   $B052         
0111:08             PHP                 
0112:20 45 B0       JSR   $B045         
0115:28             PLP                 
0116:B0 08          BCS   $0120         
0118:AC BD B3       LDY   $B3BD         
011B:AE BC B3       LDX   $B3BC         
011E:D0 0A          BNE   $012A         
0120:AE BC B4       LDX   $B4BC         
0123:D0 02          BNE   $0127         
0125:38             SEC                 
0126:60             RTS                 
0127:AC BD B4       LDY   $B4BD         
012A:8E 97 B3       STX   $B397         
012D:8C 98 B3       STY   $B398         
0130:A9 02          LDA   #$02          ;
0132:20 52 B0       JSR   $B052         
0135:18             CLC                 
0136:60             RTS                 
0137:20 45 B0       JSR   $B045         
013A:AE 97 B3       LDX   $B397         
013D:AC 98 B3       LDY   $B398         
0140:A9 01          LDA   #$01          ;
0142:4C 52 B0       JMP   $B052         
0145:AD C5 AA       LDA   $AAC5         
0148:8D F0 B7       STA   $B7F0         
014B:AD C6 AA       LDA   $AAC6         
014E:8D F1 B7       STA   $B7F1         
0151:60             RTS                 
0152:8E EC B7       STX   $B7EC         
0155:8C ED B7       STY   $B7ED         
0158:8D F4 B7       STA   $B7F4         
015B:29 01          AND   #$01         
015D:0A             ASL                 
015E:EA             NOP                 
015F:0D D5 B5       ORA   $B5D5         
0162:8D D5 B5       STA   $B5D5         
0165:AD F9 B5       LDA   $B5F9         
0168:49 FF          EOR   #$FF         
016A:8D EB B7       STA   $B7EB         
016D:AD F7 B5       LDA   $B5F7         
0170:8D E9 B7       STA   $B7E9         
0173:AD F8 B5       LDA   $B5F8         
0176:8D EA B7       STA   $B7EA         
0179:AD E2 B5       LDA   $B5E2         
017C:8D F2 B7       STA   $B7F2         
017F:AD E3 B5       LDA   $B5E3         
0182:8D F3 B7       STA   $B7F3         
0185:A9 01          LDA   #$01         
0187:8D E8 B7       STA   $B7E8         
018A:AC C1 AA       LDY   $AAC1         
018D:AD C2 AA       LDA   $AAC2         
0190:20 B5 B7       JSR   $B7B5         
0193:AD F6 B7       LDA   $B7F6         
0196:8D BF B5       STA   $B5BF         
0199:A9 FF          LDA   #$FF         
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
toinet
Site Admin


Inscrit le: 15 Juin 2007
Messages: 2937
Localisation: Le Chesnay, France

MessagePosté le: Lun 01 Jan 2018, 17:35    Sujet du message: Répondre en citant

The same code from an original master DOS 3.3

Code:

T1/SE FROM DOS 3.3

051D:2C D5 35       BIT   $35D5         
0520:70 01          BVS   $0523         
0522:60             RTS                 
0523:20 E4 2F       JSR   $2FE4         
0526:A9 02          LDA   #$02          ; 01
0528:20 52 30       JSR   $3052         
052B:A9 BF          LDA   #$BF         
052D:2D D5 35       AND   $35D5         
0530:8D D5 35       STA   $35D5         
0533:60             RTS                 
0534:AD D5 35       LDA   $35D5         
0537:30 01          BMI   $053A         
0539:60             RTS                 
053A:20 4B 2F       JSR   $2F4B         
053D:A9 02          LDA   #$02          ; 01
053F:20 52 30       JSR   $3052         
0542:A9 7F          LDA   #$7F         
0544:2D D5 35       AND   $35D5         
0547:8D D5 35       STA   $35D5         
054A:60             RTS                 
054B:AD C9 35       LDA   $35C9         
054E:8D F0 37       STA   $37F0         
0551:AD CA 35       LDA   $35CA         
0554:8D F1 37       STA   $37F1         
0557:AE D3 35       LDX   $35D3         
055A:AC D4 35       LDY   $35D4         
055D:60             RTS                 
055E:08             PHP                 
055F:20 34 2F       JSR   $2F34         
0562:20 4B 2F       JSR   $2F4B         
0565:20 0C 2F       JSR   $2F0C         
0568:28             PLP                 
0569:B0 09          BCS   $0574         
056B:AE D1 35       LDX   $35D1         
056E:AC D2 35       LDY   $35D2         
0571:4C B5 2F       JMP   $2FB5         
0574:A0 01          LDY   #$01         
0576:B1 42          LDA   ($42),Y       
0578:F0 08          BEQ   $0582         
057A:AA             TAX                 
057B:C8             INY                 
057C:B1 42          LDA   ($42),Y       
057E:A8             TAY                 
057F:4C B5 2F       JMP   $2FB5         
0582:AD BB 35       LDA   $35BB         
0585:C9 04          CMP   #$04         
0587:F0 02          BEQ   $058B         
0589:38             SEC                 
058A:60             RTS                 
058B:20 44 32       JSR   $3244         
058E:A0 02          LDY   #$02         
0590:91 42          STA   ($42),Y       
0592:48             PHA                 
0593:88             DEY                 
0594:AD F1 35       LDA   $35F1         
0597:91 42          STA   ($42),Y       
0599:48             PHA                 
059A:20 3A 2F       JSR   $2F3A         
059D:20 D6 37       JSR   $37D6         
05A0:A0 05          LDY   #$05         
05A2:AD DE 35       LDA   $35DE         
05A5:91 42          STA   ($42),Y       
05A7:C8             INY                 
05A8:AD DF 35       LDA   $35DF         
05AB:91 42          STA   ($42),Y       
05AD:68             PLA                 
05AE:AA             TAX                 
05AF:68             PLA                 
05B0:A8             TAY                 
05B1:A9 02          LDA   #$02          ; 01
05B3:D0 02          BNE   $05B7         
05B5:A9 01          LDA   #$01          ; 02
05B7:8E D3 35       STX   $35D3         
05BA:8C D4 35       STY   $35D4         
05BD:20 52 30       JSR   $3052         
05C0:A0 05          LDY   #$05         
05C2:B1 42          LDA   ($42),Y       
05C4:8D DC 35       STA   $35DC         
05C7:18             CLC                 
05C8:6D DA 35       ADC   $35DA         
05CB:8D DE 35       STA   $35DE         
05CE:C8             INY                 
05CF:B1 42          LDA   ($42),Y       
05D1:8D DD 35       STA   $35DD         
05D4:6D DB 35       ADC   $35DB         
05D7:8D DF 35       STA   $35DF         
05DA:18             CLC                 
05DB:60             RTS                 
05DC:20 E4 2F       JSR   $2FE4         
05DF:A9 01          LDA   #$01          ; 02
05E1:4C 52 30       JMP   $3052         
05E4:AC CB 35       LDY   $35CB         
05E7:AD CC 35       LDA   $35CC         
05EA:8C F0 37       STY   $37F0         
05ED:8D F1 37       STA   $37F1         
05F0:AE D6 35       LDX   $35D6         
05F3:AC D7 35       LDY   $35D7         
05F6:60             RTS                 
05F7:A9 01          LDA   #$01          ; 02
05F9:D0 02          BNE   $05FD         
05FB:A9 02          LDA   #$02          ; 01
05FD:AC C3 2A       LDY   $2AC3         
0600:8C F0 37       STY   $37F0         
0603:AC C4 2A       LDY   $2AC4         
0606:8C F1 37       STY   $37F1         
0609:AE FA 35       LDX   $35FA         
060C:A0 00          LDY   #$00         
060E:4C 52 30       JMP   $3052         
0611:08             PHP                 
0612:20 45 30       JSR   $3045         
0615:28             PLP                 
0616:B0 08          BCS   $0620         
0618:AC BD 33       LDY   $33BD         
061B:AE BC 33       LDX   $33BC         
061E:D0 0A          BNE   $062A         
0620:AE BC 34       LDX   $34BC         
0623:D0 02          BNE   $0627         
0625:38             SEC                 
0626:60             RTS                 
0627:AC BD 34       LDY   $34BD         
062A:8E 97 33       STX   $3397         
062D:8C 98 33       STY   $3398         
0630:A9 01          LDA   #$01          ; 02
0632:20 52 30       JSR   $3052         
0635:18             CLC                 
0636:60             RTS                 
0637:20 45 30       JSR   $3045         
063A:AE 97 33       LDX   $3397         
063D:AC 98 33       LDY   $3398         
0640:A9 02          LDA   #$02          ; 01
0642:4C 52 30       JMP   $3052         
0645:AD C5 2A       LDA   $2AC5         
0648:8D F0 37       STA   $37F0         
064B:AD C6 2A       LDA   $2AC6         
064E:8D F1 37       STA   $37F1         
0651:60             RTS                 
0652:8E EC 37       STX   $37EC         
0655:8C ED 37       STY   $37ED         
0658:8D F4 37       STA   $37F4         
065B:C9 02          CMP   #$02          ;
065D:D0 06          BNE   $0665         
065F:0D D5 35       ORA   $35D5         
0662:8D D5 35       STA   $35D5         
0665:AD F9 35       LDA   $35F9         
0668:49 FF          EOR   #$FF         
066A:8D EB 37       STA   $37EB         
066D:AD F7 35       LDA   $35F7         
0670:8D E9 37       STA   $37E9         
0673:AD F8 35       LDA   $35F8         
0676:8D EA 37       STA   $37EA         
0679:AD E2 35       LDA   $35E2         
067C:8D F2 37       STA   $37F2         
067F:AD E3 35       LDA   $35E3         
0682:8D F3 37       STA   $37F3         
0685:A9 01          LDA   #$01         
0687:8D E8 37       STA   $37E8         
068A:AC C1 2A       LDY   $2AC1         
068D:AD C2 2A       LDA   $2AC2         
0690:20 B5 37       JSR   $37B5         
0693:AD F6 37       LDA   $37F6         
0696:8D BF 35       STA   $35BF         
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet     Index du Forum -> PROTECTION MALEFIQUE Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com