Index du Forum
IDENTIFICATION SERVEUR : 10.0.97.129 - CLIENT : 54.225.16.10

 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 

Dinner on a disk (Homemaker/Softsmith, 1981/1983)

 
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: 2893
Localisation: Le Chesnay, France

MessagePosté le: Ven 14 Avr 2017, 9:22    Sujet du message: Dinner on a disk (Homemaker/Softsmith, 1981/1983) Répondre en citant

#920 - (c) 1981, Homemaker Software. The age-old art of cooking now joins the space-age of computer technology! Meet Dinner on a Disk, the first computerized cookbook. At the press of a button, any of dozens of recipes appear on the screen. Another press and you have a copy of the recipe to carry to the store or give to friends. Dinner on a Disk can't do your cooking for you yet, but it definitively out-computes all the other cookbooks around!

Disk structure
This is a protected DOS 3.3 disk. Tracks 0-2 are not readable, the other tracks are. Note that the boot trace technique is similar to Math Skills. The only difference is that data is read from tracks 1, 1.5 and 2 and put at :
- $0900..$13FF: BASIC program
- $4000..$42FF: assembly routines

A deeper analysis with the nibble editor of Copy II plus shows that we find (again) the track info set to 0 in the address field for tracks different from... 0. Ah! That prevents all standard copiers from copying a track: where it looks for track 1, it reads track 0...

Boot trace
As the boot trace is similar to Math Skills, refer to it.

How to copy
...if we can say so:
Launch Advanced Demuffin 1.4 from my copy disk
Enter the monitor
B930:18 60 EA
B98B:18 60 EA
Press ctrl-Y
Copy T0
Copy T3-T22

Normalize the disk
Hum. That is the most annoying part of the crack:
1. With DiskFixer
- T0/S0/B2: 00 -> 01 ; tell that we move to track 1 (a real T1)
- T0/S0/B7: 01 -> 00 ; tell that we want sector 0
- Copy that sector to T1/S0. Why? Because we will use it as our new intermediate T0/S0 instead of the one that we had in memory at $0800. Read the next message for the new sector. We'll load data from track 1 from $0900 to $13FF. Then, we'll move to T2 and load code at $4000..$42FF and then move to T3 and load its sector 0 and execute it.
2. With Mobby Disk II
- Move the data you have at $900..$13FF at $4100 (to enter the monitor, press ctrl-E, space, space ; to exit, press ctrl-Y). At $4000, you'll put a copy of T0/S0
- Write T1/S0, then ctrl-W the entire track
- Now move the code originally set at $4000..$42FF to the same area (I wish you have moved the memory before...). Write T2/S0 to T2/S2.
And that's it! I've put the original T1/S7 on T1/SF.

The disk image is available at http://www.brutaldeluxe.fr/crack/ - The complete package on Asimov.

Reboot and... enjoy,

LoGo
4/2017


Dernière édition par toinet le Ven 14 Avr 2017, 10:49; é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: 2893
Localisation: Le Chesnay, France

MessagePosté le: Ven 14 Avr 2017, 10:46    Sujet du message: Répondre en citant

The new rewritten T1/S0, originally the one that had to be loaded from T1/S7. I use T0/S0 as it is easier to use (it has an interleaving table) and I've made some changes to make it look more like the Accolade boot.

Code:

0004:01             ORA                 ; one sector
0001:4C 80 08       JMP   $0880         ; hop hop

0004:00             BRK                 ; interleaving table
0005:0D 0B 09       ORA   $090B         
0008:07             @@@                 
0009:05 03          ORA   $03           
000B:01 0E          ORA   ($0E,X)       
000D:0C 0A 08       TSB   $080A         
0010:06 04          ASL   $04           
0012:02             @@@                 
0013:0F             @@@                 

0014:A6 2B          LDX   $2B           ; the move arm routine
0016:A4 A4          LDY   $A4           
0018:84 A9          STY   $A9           
001A:C8             INY                 
001B:84 A4          STY   $A4           
001D:A9 EF          LDA   #$EF         
001F:85 A5          STA   $A5           
0021:A9 D8          LDA   #$D8         
0023:85 A6          STA   $A6           
0025:A9 00          LDA   #$00         
0027:85 A2          STA   $A2           
0029:A5 A9          LDA   $A9           
002B:85 A3          STA   $A3           
002D:38             SEC                 
002E:E5 A4          SBC   $A4           
0030:F0 1F          BEQ   $0051         
0032:E6 A9          INC   $A9           
0034:49 FF          EOR   #$FF         
0036:A8             TAY                 
0037:38             SEC                 
0038:20 55 08       JSR   $0855         
003B:B9 74 08       LDA   $0874,Y       
003E:20 63 08       JSR   $0863         
0041:A5 A3          LDA   $A3           
0043:18             CLC                 
0044:20 57 08       JSR   $0857         
0047:B9 75 08       LDA   $0875,Y       
004A:20 63 08       JSR   $0863         
004D:E6 A2          INC   $A2           
004F:D0 D8          BNE   $0029         
0051:20 63 08       JSR   $0863         
0054:18             CLC                 
0055:A5 A9          LDA   $A9           
0057:29 03          AND   #$03         
0059:2A             ROL                 
005A:05 2B          ORA   $2B           
005C:AA             TAX                 
005D:BD 80 C0       LDA   $C080,X       
0060:A6 2B          LDX   $2B           
0062:60             RTS                 
0063:A2 11          LDX   #$11         
0065:CA             DEX                 
0066:D0 FD          BNE   $0065         
0068:E6 A5          INC   $A5           
006A:D0 02          BNE   $006E         
006C:E6 A6          INC   $A6           
006E:38             SEC                 
006F:E9 01          SBC   #$01         
0071:D0 F0          BNE   $0063         
0073:60             RTS                 
0074:01 70          ORA   ($70,X)       

0076:A5 2B          LDA   $2B           ; could be removed
0078:A6 2B          LDX   $2B           ; slot*16
007A:6C A7 00       JMP   ($00A7)       ; go read
007D:00             BRK                 
007E:00             BRK                 
007F:00             BRK                 

0080:A9 60          LDA   #$60          ; return please
0082:8D 01 08       STA   $0801         
0085:A9 01          LDA   #$01          ; tell it is track 1
0087:85 41          STA   $41           
0089:85 A4          STA   $A4           
008B:A9 09          LDA   #$09          ; load at $0900
008D:A0 01          LDY   #$01          ; from sector 1
008F:A2 0C          LDX   #$0C          ; to sector B (+1)
0091:20 E0 08       JSR   $08E0         
0094:A9 02          LDA   #$02          ; move to track 2
0096:85 41          STA   $41           
0098:85 A4          STA   $A4           
009A:20 14 08       JSR   $0814         
009D:20 14 08       JSR   $0814         
00A0:A9 40          LDA   #$40          ; load at $4000
00A2:A0 00          LDY   #$00          ; from sector 0
00A4:A2 03          LDX   #$03          ; to sector 2 (+1 then)
00A6:20 E0 08       JSR   $08E0         
00A9:A9 03          LDA   #$03          ; move to track 3
00AB:85 41          STA   $41           
00AD:20 14 08       JSR   $0814         
00B0:20 14 08       JSR   $0814         
00B3:A9 08          LDA   #$08          ; load at $0800
00B5:A0 00          LDY   #$00          ; sector 0
00B7:A2 01          LDX   #$01          ; last is 1
00B9:20 E0 08       JSR   $08E0         ; go read
...
00E0:85 27          STA   $27           ; RAM address
00E2:86 A1          STX   $A1           ; last sector +1
00E4:84 A0          STY   $A0           ; first sector
00E6:B9 04 08       LDA   $0804,Y       ; get interleaving
00E9:85 3D          STA   $3D           ; set sector
00EB:20 78 08       JSR   $0878         ; read sector
00EE:A4 A0          LDY   $A0           ; sector++
00F0:C8             INY                 
00F1:C4 A1          CPY   $A1           
00F3:90 EF          BCC   $00E4         
00F5:60             RTS                 
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