Crackware


 _____________________________________________________________________________
! ____________                                                                !
!  CRACK-WARE                      A Warner BRAIN TRUST Production ( 1/10/89) !
!_____________________________________________________________________________!



   Et nous voilà reparti pour vous pondre une nouvelle introduction (mais cette
fois-ci, plus à la manière mégaloesque de Cool-Ware 2!), une introduction très
importante et rédigée avec le plus grand sérieux (y'en a déjà (ceux qui nous
connaissent particulièrement!) qui pouffent derrière leur moniteur, et qui se
disent : c'est pas vrai, ils blaguent encore!!!). Et bien, ce coup-ci, on sera
sérieux car c'est la dernière fois que vous nous lirez. Peut-etre qu'un jour,
vous aurez la chance de nous voir sur une chaine de télévision, qui sait!!!

   Vous avez pu lire sur la première page de présentation : LAST TBT'SOFTWARE!
Et bien c'est VRAI! CRACK-WARE (facilement 8 mois de travail) signe la fin des
activités du BRAIN TRUST sur APPLE 2 SERIES, c'est-à-dire II, II+, II europlus,
IIe, //c, IIe kit 65C02, Franklin, Laser, sauf le IIGS (cette dernière version
où nous n'avons rien fait, à part du swaping) et le IIc+. Cela signifie donc :
arret des cracks, arret du BLACK CHEST, arret du swaping hors France, arret
des fixed games, arret des products, plus de freewares BRAIN TRUST...

   Mais POURQUOI, vous dites vous?

   Et bien nous avons plusieurs raisons, et pour évitez d'avoir notre bal Rtel
et Chez* saturée de questions et demandes, vous allons en expliquer 2.

   Commencons par la seconde, si vous le voulez bien!

   2 = Chaque individu dans sa vie change et a besoin d'évoluer, pour cela il
faut qu'il modifie pas mal de choses pour y arriver. Ici, seuls sont concerner
les 3 premiers membres à savoir COPPERFIELD, LOOCKHEED et THE JOKERSOFT qui
désirent maintenant travailler pour leurs études (toutes scientifiques). Nous
avons tous les trois presque une vingtaine d'années et c'est un moment
décisif en ce qui concernent les examens et les concours (CAPTAIN CRACK est
parti du Brain Trust car il faisait une haute école de commerce).
OLIVER TWIST rentre aussi un peu dans le cas des trois premiers membres du
Brain Trust, mais lui, ne peut se passer de cette "drogue"!
Pour ce qui est du cas de PATCHMAN, c'est un adulte totalement responsable,
mais l'Atari ST le passionant plus de nos jours que l'Apple, il va rentrer dans
un groupe de déplombeurs ST et voler vers de nouveaux horizons...


   1 = Et c'est la raison la plus forte et la plus dure a avoué :
             L'APPLE 2 EST TOTALEMENT MORT EN FRANCE!!!
Plus de ventes d'originaux dans les boites, plus de la place aux Apple à la
série 2 dans les entreprises (place aux Mac!), et c'est la seule machine où
l'on trouve plus de freewares que de logiciels commerciaux... et cette "mort"
remonte a presque qu'une année. Nous en sommes conscient depuis très longtemps,
mais nous avons toujours défendu notre chère machine : 11 ans d'existence,
machine-"mère" du cracking dans les ordinateurs familiaux (n'oubliez quand meme
pas Aldo Reset et Laurent Rueil du CCB).


   Sur Apple 2 series, il reste derrière nous, 9 groupes et 1 cracker :

GODFATHER (alone!)
$FF59 CONNECTION : Perfect Bugs + Sputnik + Tetard + The Last Jedi
DOX A GAZ'S TEAM : Max A Gaz + Conan + Dunn Hatani + GJP 93 + Iron Fist
   + Le Gobelin Hargneux + Thor + William Comte
HACKERFORCE : Crazy Boy + Max Headroom + Sharp + The Monz + The White Man
LYON'S GANG : Ap II + Arn + Béru + Hervé + Pierrot + Rat + The Wargamer
MVGANG : Coca + MvCamillo => réseau de distribution
RAMBO PIRAT CRACK BAND (RPCB) : Eddie Hawk (Crocky Disk) + Kainzow
   + The Cougar (Bloady)
THE WARRIORS OF DESTINY : Deckard + Eddie Hawk + The Newsrunner
VISUAL EYES : The Kid + Rat
WORLD OPERATION FOR PIRATING REVOLUTION (WOPR) : Brian Moebius + Gandalf-Apple
   + The Kid


   Ces groupes ne produisent que des freewares (recueils de docs, de musics,
d'images, etc...) mais n'apportent pas de softs (jeux d'arcades, utilitaires,
etc...) dans notre métropole... Seule une seule personne est à la hauteur et
la prouver pendant longtemps (il faut quand meme l'avouer, meme si ce fut notre
plus grand ennemi!!!), mais sans motivation et temps, on ne va pas loin. Nous
irons meme jusqu'à penser que Godfather fera encore des cours sur son vieux
//c en l'an 2000, cours qu'il vendra à son père et à sa mère (Cours 78 :
Comment allumer votre Apple 2 rapidement, en 5 leçons (sources fournis!))? Mais
nous comptons sur deux groupes pour prendre la relève, et ils savent que leur
tache est grande s'ils veulent l'assumer pleinement...


   De nombreux crackers célèbres ont pris conscience de tout cela et sont
partis, déjà depuis bien longtemps, et ont reformé leur patrimoine sur une
autre machine, après parfois une période sabatique. On retrouve ainsi Chip
Select et Goldpom et Mister Z qui forment le GS Alliance, ACS-Dijon qui sont
aussi partis sur GS, et on ne vous parlent meme pas de ceux qui sont partis
sur une machine autre qu'Apple, comme l'Atari ou l'Amiga : Tsunoo, voire meme
notre cher Patchman, sans vous parlez de ceux qui ont changé de pseudo, mais
qui sont toujours en activité sur une autre bécane!!! Chut... Top Secret...


   Et pour tout cela, nous vous annonçont que nous reviendra au cracking.
Mais dans combien de temps?
     sur quelle machine?
     avec quels pseudos?

   Nous pouvons déjà vous dire que l'on a entendu des rumeurs, comme quoi on
passerait tout de suite sur GS, c'est intéressant à savoir, car nous n'étions
meme pas au courant!!!!!!!!! Pourquoi pas sur Atari ST ou STE ou sur Amiga ou
sur Archimede???




   Nous tenons à remercier pas mal de personnes sur Apple 2, sans lesquelles
nous ne serions pas grand chose : Rodnay Zaks, Michael W., Glen Bredon, Paul
Lutus, Roger Wagner, R.J Lissner, Kevin Harver & Alex Perelberg, David Snider,
Roland Gustafsson, sans oublier Steve Wozniak & Steve Jobs!!! et aussi quelques
sociétés : Central Point Software Inc., Alpha Logic Business Systems, Inc., et
bien sur Apple Computer, Inc.




   Parlons maintenant un peu de la présentation de Crack-Ware! C'est la plus
sobre de toute l'histoire du Brain Trust : pas de boules qui bougent, pas de
plaques qui tournent, pas de lignes qui se déplacent, pas de logo qui
oscillent, pas de smooth scroll, etc... rien que des images DHGR à la manière
d'un slideshow qui serait une bibliographie du Brain Trust!


   La première image (la présentation) vous souhaite une belle mort sur votre
Apple 2 sur une musique qui ressemble à celle de Santa Barbara.

   La seconde (le barbare) est le Golden Big Shit que devait se payer qui vous
savez depuis bien longtemps en réponse à Dep ME 9, ceci sur une musique qui
introduit l'arrivée de Dark Vador dans Star Wars.

   La troisième (de Cassus Beli) est la réponse du Brain Trust à une certaine
série de cours illicites de déplombage, ceci sur une marche funèbre.

   La quatrième (l'Infernoid!) signe la fin des activités du Brain Trust sur
Apple 2 series : Game Over à la façon d'un jeu d'arcade comme un casse-briques,
sur une musique qui ressemble à celle du jeu d'aventures : Hawaii, intitulée :
Flash into the bay.

   La cinquième (le dragon) est une transcription d'une image Atari ST sur
Apple 2 par Patchman, toujours sur une zizique de Max A Gaz. L'image pert un
peu de sa beauté à cause de la résolution (640*200 pour le ST contre 560*192
pour l'Apple 2!) et du manque de couleurs... Brain Trust Division ST!!!


   Les remerciements pour cette présentation vont à :
- Compresseur/décompresseur DHGR : Deny (ACS),
- Scrolling DHGR : Oliver Twist,
- Digitalisations : Loockheed, Oliver Twist, Colonel Klink,
- Excel-Transcription ST->Apple 2 : Patchman,
- Design and Handmade pictures : The Jokersoft,
- Electric Duet's musiques : Max A Gaz (ouille!),
- Excel-Boot v2.7 : Patchman,
- Compteur boot+serial (Kilaibo) : Oliver Twist
- Réalisation : The Jokersoft (pas de codage, pas de checksum, juste compressé,
                               319 secteurs de présentation!!!)


   La présentation dure 8'46" dans son intégralité et 46" en appuyant toujours
sur une touche, ceci est très long et pour palier à tout cela nous avons
rajouter une option qui permet de passer cette démo : appuyez sur la touche Q
dès le boot, et vous accèderez tout de suite à l'excel-menu (en 5"!).


   Un tout nouveau menu (car c'est la folie en ce moment sur Apple!). La partie
graphique étant réalisée par The Jokersoft et celle du "Reader Text" par
Patchman sous son Excel-Read v6.1. Ce menu permet de charger des fichiers Text
jusqu'à 128 secteurs en moins de 4 secondes!!! Pour lire les textes, utilisez
le joystick : de haut en bas, déplacement par page et de gauche à droite,
déplacement par ligne. Appuyez sur la touche H pour Help.

   Ce menu n'est pas assorti de la musique la plus célèbre de ces 18 derniers
mois : RAD WARRIOR : L'HYMNE DU BRAIN TRUST. Elle fut extraite, avec du mal,
par Captain Crack, Oliver Twist en a fait un source, Loockheed sait la jouer au
piano, on n'a meme mis les notes à l'envers : un Rad Warrior en verlan!!!
Et vous auriez pu l'entendre pour la 22ième fois au début de ce menu (essayez
quand meme la touche DELETE au menu du TBT'S COPY DISK et de booter la deuxième
face de Crack-WARE! Non, c'est pas vrai, ils l'ont encore fait!!!)

   Nous allons meme vous donné une auto-critique de notre excel-menu appelé :
   "EXCEL-READOC + EXCEL-BROWSER" : (ATTENTION : EXCEL (tm) Patchman.)
   - Il est en HGR, alors qu'on aurait pu le faire en DHGR (cf. Art Of Noise),
   - Pas d'option imprimante, car cela nous faisait ch... de la programmer
     (utiliser Apple Writer //) pourtant une hardcopy de la mémoire, c'est pas
     compliquée,
   - Si vous voulez relire un fichier, que vous venez de lire en dernier lieu,
     il est inutile de le recharger puisqu'il est en mémoire, il suffit juste
     de le réafficher (option programmée mais pas gérée!)
   - Pas de message d'erreur en cas de non présence du fichier sur le disk,
     mais la lecture étant tellement rapide, vous comprendrez aisément que le
     fichier sélectionné n'était pas sur la face.



             ALORS MAINTENANT, BONNE LECTURE AVEC CRACK-WARE ET
             SURTOUT BONNE CHANCE SI VOUS RESTEZ SUR APPLE 2...
 NOUS ESPERONS NOUS TROMPER EN CE QUI CONCERNE L'AVENIR DE L'APPLE EN FRANCE...



_INTRODUCTION_CRACK-WARE___________________________________________________TBT_


Crackware
Crackware
Crackware
Crackware
Crackware
Crackware
Crackware
Crackware
Crackware
Crackware
Crackware


Floppy
Fboot & DOS 3.3
Download Crackware side 1 (gzipped)
Floppy
DOS 3.3
Download Crackware side 2 (gzipped)
Floppy
DOS 3.3
Download Crackware side 3 (gzipped)


Sommaire


Lien Article Auteur fichier
Voir Appendix Brain Trust. The Brain Trust.
Voir En direct des States. The Jokersoft.
Voir Destroy the products. The Jokersoft, Copperfield et Oliver Twist.
Voir Such a shame. The Brain Trust.
Voir Pourquoi tant de ...?. The Brain Trust.
Voir Source boot 0. Copperfield.
Voir EPYX's cookbook. The Jokersoft.
Voir Arkanoid. The Jokersoft.
Voir Art of war at sea. Loockheed.
Voir Bad Dudes. The Jokersoft.
Voir Bubble Bobble. The Jokersoft.
Voir Crossbow. The Jokersoft.
Voir Dive Bomber. The Jokersoft.
Voir Dondra. The Jokersoft.
Voir Force 7. The Jokersoft.
Voir Impossible mission 2. The Jokersoft.
Voir Jaws. The Jokersoft.
Voir L.A. Crackdown. The Jokersoft.
Voir Might and Magic II. The Jokersoft et Oliver Twist.
Voir Neuromancer (1). Loockheed.
Voir Neuromancer (2). Loockheed.
Voir Neuromancer (3). Loockheed.
Voir Platoon. The Jokersoft.
Voir Pool of Radiance. William Comte.
Voir Rampage. Copperfield.
Voir Roger Rabbit. The Jokersoft.
Voir Street Sports Basketball. The Jokersoft.
Voir Street Sports Football. The Jokersoft.
Voir Street Sports Soccer. The Jokersoft.
Voir Spiderbot. The Jokersoft.
Voir Spy vs Spy 3. The Jokersoft.
Voir Star Rank Boxing 2. The Jokersoft.
Voir The games : Summer Edition. The Jokersoft.
Voir Tangled Tales (1). Loockheed.
Voir Tangled Tales (2). Loockheed.
Voir Tangled Tales (3). Loockheed.
Voir Technocop. The Jokersoft.
Voir Tetris. Loockheed et The Jokersoft.
Voir Test Drive. Copperfield.
Voir The Last Ninja. The Jokersoft.
Voir Thexder. The Jokersoft.
Voir Tomahawk. The Jokersoft.
Voir Victory Road. Loockheed et The Jokersoft.
Voir The Games : Winter Edition. The Jokersoft.
Voir Auto-interview d'Oliver Twist. Oliver Twist.
Voir Lettre ouverte de The Jokersoft. The Jokersoft.


hr Crackware

Appendix Brain Trust.


 _____________________________________________________________________________
!                                                                             !
! CRACK-WARE                                   APPENDIX BRAIN TRUST (1/10/89) !
!_____________________________________________________________________________!



> CRACKED BY THE BRAIN TRUST

DAZZLE DRAW                     85 BRODERBUND                     / 4/88
STRIKE FLEET                    87 EOA                            / 5/88
MULTISCRIBE 3.0 2C              87 STYLEWARE                      / 6/88
FORCE SEVEN                     87 DATASOFT                       / 6/88
L.A. CRACKDOWN                  88 EPYX                         29/ 7/88
DIVE BOMBER                     88 ACME ANIMATION               24/ 9/88
RAMPAGE                         88 ACTIVISION                   25/10/88
THE LAST NINJA                  88 ACTIVISION                     /11/88
PLATOON                         88 DATA EAST                     7/12/88
TIMES OF LORE                   88 ORIGIN SYSTEMS                 /12/88
ARKANOID                        88 TAITO                        18/12/88
SUMMER EDITION                  88 EPYX                         18/12/88
NEUROMANCER                     88 INTERPLAY                      /12/88
WHO FRAMED ROGER RABBIT?        88 BUENA VISTA                    /12/88
IMPOSSIBLE MISSION 2            88 EPYX / FACS                  27/12/88
STAR RANK BOXING 2              88 GAMESTAR                     31/12/88
WINTER EDITION                  88 EPYX                         17/ 1/89
MIGHT AND MAGIC 2               88 NEW WORLD COMPUTING          18/ 1/89
WIZARDRY 5                      88 SIR TECH                     24/ 1/89
THE ANCIEN ART OF WAR AT SEA    88 BRODERBUND                    1/ 2/89
BAD DUDES                       88 DATA EAST                    18/ 3/89
TETRIS 64 Ko                    88 ACADEMY SOFT                   / 4/89
STREET SPORTS FOOTBALL          88 EPYX                         14/ 5/89
KING'S QUEST 4                  89 SIERRA ON-LINE               14/ 5/89
TECHNOCOP                       88 GRAY MATTER                    / 5/89
TANGLED TALES                   89 ORIGIN SYSTEMS               23/ 6/89
SPIDERBOT                       88 EPYX / FACS                  28/ 7/89


> FIXED GAME BY THE BRAIN TRUST

KID NIKI                        87 DATA EAST                      / 4/88
INTO THE EAGLE'S NEST           87 MINDSCAPE                      / 5/88
FORCE 7.2                       87 DATASOFT                       / 6/88
PIRATES!                        87 MICROPROSE                     / 8/88
VIPER PATROL/ROD'S REVENGE      88 ROD                            /11/88
RAD WARRIOR                     87 EPYX                           /12/88
ARKANOID                        88 TAITO                        18/12/88
VICTORY ROAD                    88 DATA EAST                    17/ 2/89
BAD DUDES                       88 DATA EAST                     9/ 4/89
THEXDER                         89 SIERRA ON-LINE                4/ 7/89


> DISTRIBUTED BY THE BRAIN TRUST

MURDER ON THE ATLANTIC          88 INTRACORP                      /10/88
SKY TRAVEL                      88 DELTRON                        /10/88
STAR TREK                       88 PARAMOUNT                      /12/88
POLICE QUEST                    88 SIERRA ON-LINE               18/12/88
MIXED-UP MOTHER GOOSE           88 SIERRA ON-LINE               23/12/88
THE HUNT FOR RED OCTOBER        88 DATASOFT                     13/ 3/89
POOL OF RADIANCE                89 S.S.I.                        4/ 5/89
COPY II+ 8.3 (DEBUGGED VERS.)   89 CENTRAL POINT SOFTWARE         / 5/89
SHOGUN                          89 INFOCOM                      19/ 7/89


> HONG-KONG IMPORTS BY TBT

B-24                            87 S.S.I.                       31/ 1/89
BISMARCK                        87 DATASOFT                     31/ 1/89
FINGERSPELLER                   88 A.TOLU HONARY D.I.T.         31/ 1/89
THE BUSINESS ACCOUNTANT         86 MANZANITA SOFTWARE SYSTEMS   31/ 1/89
WELCOME                         86 ABRACADATA LTD.              31/ 1/89
HEATH MATH WORLD                87 D.C. HEATH AND COMPANY       21/ 2/89
MEMORY BUILDING BLOCK           86 SUNBURST                     21/ 2/89
OUR TOWN MEETING                87 TOM SNYDER PRODUCTIONS INC.  21/ 2/89
THE ENCHANTED FORECAST          86 SUNBURST                     21/ 2/89
THE LIMA BEAN DREAM             87 LEARNINGWAYS INC.            21/ 2/89


> CALIFORNIA IMPORTS BY TBT

TETRIS 64Ko (CTC Version)       88 ACADEMY SOFT                 21/ 2/89
THE MARKET PLACE                84 M.E.C.C.                     21/ 2/89


> CANADIAN IMPORTS BY TBT

JOKER POKER                     88 JOKER SOFTWARE               11/ 2/89
RISK                            88 JOKER SOFTWARE               11/ 2/89
BATTLES OF NAPOLEON             88 S.S.I.                       11/ 2/89
WRITING PUBLISHING CENTER                                       11/ 2/89
SLIDESHOP                                                       11/ 2/89
STREET SPORTS SOCCER            88 EPYX                         11/ 2/89
THE CHESSMASTER 2100            88 SOFTWARE TOOLWORKS           11/ 2/89
TYPHOON OF STEEL                88 S.S.I.                       11/ 2/89
VICTORY ROAD                    88 DATA EAST                    11/ 2/89


> THE BRAIN TRUST'S PRODUCTS

COOL-WARE 1                     88 THE BRAIN TRUST              13/ 7/88
ART OF NOISE 1                  88 THE BRAIN TRUST               1/ 8/88
THE JOKERSOFT'S CRACKING DISK   88 THE JOKERSOFT                 3/ 8/88
STARFIX 6                       88 THE BRAIN TRUST               1/10/88
LOOCKHEED'S GRAPHICS LIBRARY 1  88 LOOCKHEED (SECRET)           NOV.  88
COMMENT FAIRE UN FIX?           88 THE JOKERSOFT (COURS)        NOV.  88
COOL-WARE 2                     89 THE BRAIN TRUST               7/ 1/89
COOL-WARE 2 UTILITIES           89 THE BRAIN TRUST              17/ 2/89
HARDCORE 1                      89 THE BRAIN TRUST               3/ 3/89
HARDCORE 2                      89 THE BRAIN TRUST               3/ 3/89
MEGALO'S DIGITAL SLIDE SHOW 1   89 THE BRAIN TRUST              10/ 3/89
ANIMATIONS SHOW DISK            89 THE BRAIN TRUST               4/ 4/89
EXCEL-DISPLAYER DHGR (from ST)  89 PATCHMAN  (SECRET)           AVRIL 89
SLIDE SHOW DHGR_INFERNOID       89 THE JOKERSOFT (SECRET)       JUIN  89
SOURCES MERLIN TBT VOL.1        89 THE BRAIN TRUST (SECRET)     SEPT. 89
SOURCES MERLIN TBT VOL.2        89 THE BRAIN TRUST (SECRET)     SEPT. 89
SOURCES MERLIN TBT VOL.3        89 THE BRAIN TRUST (SECRET)     SEPT. 89
SOURCES MERLIN TBT VOL.4        89 THE BRAIN TRUST (SECRET)     SEPT. 89
HARDCORE 3                      89 THE BRAIN TRUST              17/ 9/89
KEYBOARDS BY THE JOKERSOFT      89 THE JOKERSOFT                18/ 9/89
FRACTAL-WARE                    89 $FF59 CONNECT./BRAIN TRUST   30/ 9/89
THE BRAIN TRUST'S COPY DISK 89  89 THE BRAIN TRUST              30/ 9/89
CRACK-WARE                      89 THE BRAIN TRUST               1/10/89
LOOCKHEED'S ANIMS SHOW DISK     89 LOOCKHEED                    PREVIEW!
PLUS #5                         89 PATCHMAN                     PREVIEW!

REM : Les products annotées (SECRET) non jamais été distribuées et sont restées
      au sein des membres du Brain Trust.



_APPENDIX_BRAIN_TRUST______________________________________________________TBT_


Retour sommaire

hr Crackware

En direct des States.


 ____________________________________________________________________________
!                                                                            !
! EN DIRECT DES STATES       written for CRACK-WARE by         THE JOKERSOFT !
!_    _  _       _ _             _ _           _ _         _ ________       _!
!_NEWS_US_IIe/IIc_(_ENTERTAINMENT_+_EDUCATIONAL_+_UTILITIES_)________1/10/89_!



- Bad Street Brawler (Mindscape)
- Blackjack Academy (Activision)
- Chickamunga (SSI)
- Computer Statis Pro Baseball (Avalon Hill)
- Crosscheck (Datasoft)
- Crosscheck Data Disks (Datasoft)
- Cyber Cop (PSI)
- Deflexor (Epyx) => On attend toujours!
- Déjà Vu (Mindscape)
- Diversy Tune (Diversy Software Research)
- Earl Weaver Baseball (EOA)
- Final Assault (Epyx) => Bivouac de chez Infogram!
- Firepower (Activision)
- First Over Germany (SSI)
- Full Count Baseball (Lance Haffner Games)
- Gold Rush (Sierra On Line)
- Homecourt (Origin Systems)
- HomeWord Plus (Sierra On Line) => not protected!
- Home Video Producer (Epyx)
- Howard the Duck (Activision)
- It's Only Rock and Roll or Hot and Cool Jazz (EOA)
- Jinxter (Rainbird) => en text!
- Knight Orc (Level 9 Computing)
- Madden Football (EOA)
- Manhunter (Sierra On Line)
- Mind Mirror (EOA)
- Multima (Origin Systems) => Ultima par modem!
- Omnicron Conspiracy (Epyx)
- Periscope (Action Software)
- Qix (Taito)
- R.S.V.P. (BlueLion Software)
- Sak MacKraken (Lucasfilm)
- Scruples (EOA)
- Smart Money (Sierra On Line)
- Space Rogue (Origin Systems)
- Sporting News Baseball (Epyx)
- Statmanager (Software Simulations)
- Sticker Maker (Epyx)
- Street Cats (US Gold)
- Super Cycle (Epyx) =>On attend toujours!
- Superstar Soccer (Mindscape)
- Tank Battle Simulator (Epyx)
- Target Renegade (Taito)
- The Alien Mindbenders (Lucasfilm)
- The Legend Of Blacksilver (Epyx)
- The Sporting News Baseball (Epyx)
- The Usurper (Sir-Tech)
- Ticket to London, Paris, Spain (BlueLion Sotware)
- Ticket to Washington D.C. (BlueLion Software)
- Tower Toppler (US Gold/Epyx)
- Ultima 6 (Origin Systems)
- Uridium (Mindscape) => a été rétiré des listes US!
- VCR Workshop (Epyx)
- Video Title Shop Graphics Companion (Datasoft)



Existant ou à venir sur d'autres machines :
- Arkanoid 2 : "Revenge Of Doh" (Taito)
- Barbarian 2 (Palace Software)
- Déja vu 2
- Gauntlet 2 (US Gold)
- Leisure Suit Larry 2 : "Looking For Love (In Several Wrong Places)"
                         (Sierra On Line)
- Police Quest 2 : "The Vengeance!" (Sierra On Line)
- Sceneries Test Drive : California Challenge + SuperCars (Accolade)
- Space Quest 3 : "The Pirates Of Pestulon" (Sierra On Line)
- Starfleet 2 : "Krellan Commander"
- Starglider 2 (Rainbird)
- Test Drive 2 : The Duel (Accolade)
- The Last Ninja 2 (Systems 3/Activision)
- Where in time is Carmen Sandiego? (Broderbund)



_EN_DIRECT_DES_STATES____________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Destroy the products.


 _____________________________________________________________________________
!                                                                             !
! DESTROY THE PRODUCTS by THE JOKERSOFT (always!), COPPERFIELD & OLIVER TWIST !
!_____________________________________________________________________________!



   Encore une nouvelle rubrique dans Crack-Ware avec un titre peut-etre peu
évocateur pour vous, mais qui veux en dire long lorsque l'on sait ce qu'il
signifie; nous vous donnons tout bonnement des parametres (comme pour les fixx)
qui permette de modifier les productions nationales. Là pas mal de monde qui
entre dans le circuit des free-wares Apple se sent viser et nous croyons qu'il
va y avoir des crissements de dents. Mais bon, let's go, sans haine, ni
violence, ni rancune...



- DEP ME 9 (C) GDF+ACS+TBT

   Le dernier volet de cette saga du déplombage a le boot le plus dégueulasse
qui puisse exister : existences de JMP inutiles, utilisations de JSR qui ne
vont que vers des RTS, présences incommensurables de NOP. C'est nul à chier et
c'est lent, 30 sec. pour accèder au menu en appuyant tout le temps sur la space
bar. Alors nous vous proposons de sauter cette présentation :

P$0/0.41 : 00 A2
P$0/2.43 : EA EA EA

   Temps de chargement : 4 sec => sans commentaire !



- THUNDERDOCS (C) EDDIE HAWK and Co.

   Alors, on vous explique comment mettre à 0001 votre numéro de sérial et vous
prendre pour Eddie Hawk qui boote son free-ware de docs. Ce numéro de sérial
(qui ne sert vraiment à rien, la preuve, il y en a un à Crack-Ware!!!) est en
P$10/F.00:XX XX. Et sur ce meme secteur, vous pourrez lire un petit message
de ce cher ex-Crocky Disk.

   Bon, pour ce qui est des codages des phrases text au boot, je dévoile tout :
ligne THUNDERDOCS etc...
P$0/0.2 (offset $6E00)
LDX #$00
! LDA $6F00,X ; pour la mem aux
! LDA $6F2A,X ; pour la mem princ
SEC
SBC #$18
EOR #$18
STA $7D0,X ; facile mais indétectable à un scanner!

ligne DEDICATED TO etc...
mem aux   adr. $6F60 eor #$A7 stocké en $52C,X
mem princ adr. $6F82 eor #$A7 stocké en $52C,X

ligne ESCAPE POUR etc...
mem aux   adr. $6FB0 eor #$A7 stocké en $40C,X
mem princ adr. $6FC0 eor #$A7 stocké en $40C,X

ligne HOPE YOU etc...
mem aux   adr. $6EE0 eor #$A8 stocké en $50D,X
mem princ adr. $6EF0 eor #$A8 stocké en $50D,X

   Et enfin on garde le meilleur pour la fin, la phrase avec les big kisses
est codée avec un codage évolutif dit "à entremelement" un peu plus balaise,
mais surmontable. Je vous file pas les parametres sinon vous allez viré notre
pseudo.

   Tu m'en veux pas, Eddie? Tu sais, moi, je suis plus petit que toi...



- CRACK-WARE (C) THE BRAIN TRUST

   Allez, on est cool, on file le truc pour voir notre numéro de Boot #
augmenté à une vitesse du tonnerre et sans que la diskette se boote (ainsi vous
dépasserez les 999 boots!) et vous abimerez pas notre drive...

P$11/3.03 : 4C 00 92

   Et bootez, c'est surprenant. Pour le remettre en place, remettez les
anciennes valeurs : A9 8F 85



- PRODUCTIONS BRAIN TRUST EN VRAC :

  - Ctrl-shift-0 ou A pour accèder au DOS sur les products sous Excel-Boot.
  - Mais S dès le boot pour Crack-Ware.
  - P$1E/C.2F : 4C 56 2E => BrainSmith without password dans le TBT's Copy Disk



_DESTROY_THE_PRODUCTS!_________________________________________THE_BRAIN_TRUST_


Retour sommaire

hr Crackware

Such a shame.


 _____________________________________________________________________________
!                                                                             !
! CRACK-WARE                                     SUCH A SHAME! NO PROTECTION! !
!_____________________________________________________________________________!



    Nous ouvrons ici une toute nouvelle rubrique, jamais rencontrée dans un
disk de cracking, nous allons citer les titres des softs récents qui ne sont
pas plombés, ce qui met les déplombeurs au chomage!

   Pour eux, préparez une caisse de tomates pourries!

GLOBAL COMMANDER                89 DATASOFT
JAWS                            89 STARSOFT
MIXED-UP MOTHER GOOSE           88 SIERRA ON-LINE
MURDER ON THE ATLANTIC          88 INTRACORP
POLICE QUEST                    88 SIERRA ON-LINE
SKY TRAVEL                      88 DELTRON
SHOGUN                          89 INFOCOM
STAR TREK                       88 PARAMOUNT
THE HUNT FOR RED OCTOBER        88 DATASOFT
THEXDER                         89 SIERRA ON-LINE
TICKET TO HOLLYWOOD             89 BLUELION


   Le camion de choux-fleurs revenant à SIERRA ON-LINE pour 3 softs non
plombés, et la benne à ordures pour Datasoft avec 2 softs...



_SUCH_A_SHAME______________________________________________________________TBT_


Retour sommaire

hr Crackware

Pourquoi tant de ...?.


 _____________________________________________________________________________
!                                                                             !
! CRACK-WARE                                          POURQUOI TANT DE HAINE? !
!_____________________________________________________________________________!



   Nous avons trouvé ce petit article dans le courrier de TILT No68
JUILLET/AOUT 1989 page 133, et nous décidons de le publier car il nous a
beaucoup amusé!


  "Je voudrais profiter de tes colonnes pour faire passer un message. Voilà, je
suis un insignifiant petit pirate de quartier, et j'adresse ma haine aux grands
groupes de pirates que je connais de nom, tels les Bladerunners, les Replicants
ou The Union. Je vous déteste, pirates, pour les magnifiques intros que vous
réalisez, alors que moi je ne saurai jamais en faire le quart. J'aimerais
arriver à vous faire comprendre la jalousie dévorante que j'ai pour vous. Voir
la facilité avec laquelle vous faites jaillir les sons et les couleurs
m'écoeure. Je vous hais, surtout vous, les inaccessibles Bladerunners, pour
votre incontestable supériorité, et pour en etre conscients et fiers. Voilà
pourquoi je vis dans l'espoir exécrable de votre pourrissement à tous...


                                 Pas de signature (étonnant,non?)"



_POURQUOI_TANT_DE_HAINE?___________________________________________________TBT_


Retour sommaire

hr Crackware

Source boot 0.


*===================================================*
*                Commencé le: 19/02/89              *
*  V 1.0           Révisé le: 13/04/89              *
*                    fini le: 24/09/89 (5h40 du mat)*
*                                                   *
* Source commenté du Boot 0 en ROM ($C600 à $C6FF)  *
* par Copperfield from The marvellous Brain Trust   *
* merci au fichier de Kristo sur les Nibbles (allez *
* voir de ma part déplombage mode d'emploi 6), qui  *
* me permis il y a quelques années d'éclaircir de   *
* nombreux mystères...                              *
*===================================================*



 ORG $C600 ; Slot CsXX, ici slot 6, S=6
 VAR OFF

*===============================

DEBUT LDX #$20 ; Sert à reconnaitre ce BOOT 0 du drive 5'1/4
   ; sinon aucun interet pour la suite


*-------------------------------
*-Construction de la table dite de 'Translation' qui permettra
* de décoder les Nibbles, pour se faire ce programme a pour but
* de chercher tous les octets de $0 à $7F, n'ayant pas plus de 2
* zéros à la suite, pas plus d'une paire de zéros et, ayant au
* moins 2 bits à 1 consécutifs.
*-Cette table sera mise en RAM de $356 à $3FF.
*-Routine en $C58E sur mon 2c 384K (idem sur GS) et en $C709 sur
* un 2c 128K, en $C602 sur 2e, 2+ (et GS avec carte controleur).
*-------------------------------
* NOTE 1 : je dis bien en $C58E sur un GS (contrairement à ce que
*          certains disent...)
*-------------------------------
* NOTE 2 : si vous etes un novice laissez tomber cette partie...
*-------------------------------
 LDY #$00 ; Y mis à 0, sera incrémenté jusqu'à $3F
 LDX #$03 ; X de $3 à $7F (pourait commencer à 16)
AUTROCTET STX $3C ; sauve X dans la page 0
 TXA  ; copie X dans l'accumulateur (A)
 ASL  ; décale à gauche A, bit 7 (=0) dans le carry
 BIT $3C ; test des bits, les bits 6 et 7 deviennent le
   ; bit de signe et celui de l'indicateur de
; débordement, l'indicateur Z positionné si
; résultat nul
 BEQ AUTREX ; si l'octet est trouvé (donc pas 2 bits
; adjacents à 1 on passe à l'AUTRE OCTET
 ORA $3C ;)
 EOR #%11111111 ; ) suite d'opérations changeant tous les
   ; ) zéros adjacents en 1 tout en ignorant
 AND #%01111110 ;) les bits 7 et 0
HC614 BCS AUTREX ; C=1 ? oui alors passons à la valeur suivante
 LSR  ; décalage à droite en mettant le bit 0 dans C
 BNE HC614 ; un seul bit à 0 ou à 1 ?
 TYA  ; on sauve la bonne valeur dans A
 STA H0356,X ; pour la stoquer dans notre fameuse table
 INY  ; prochaine valeur à tester
AUTREX INX  ; prochain nibble associé à cette valeur
 BPL AUTROCTET ; dernier nibble: $FF, on va jusqu'a $7F valeurs
*-------------------------------
* ouf ! soufflons un peu, le plus dur est passé, le reste est
* assez simple. Les novices vous pouvez essayer de comprendre...
*-------------------------------
* ici on va trouver le slot qui sera donné modulo 16 (multiplié
* par 16), grace à une petite astuce : lors d'un JSR, vous savez
* tous que l'on sauve dans la pile l'adresse du (JSR +2)-1 car
* le RTS incrémente celle-ci, donc l'adresse du JSR +1
* Dans notre cas on veut connaitre le slot, et bien c'est simple
* mais il fallait y penser : pour connaitre le slot de la routine
* de Boot, il suffit de prendre l'adresse haute de l'adresse
* (répétition) du JSR, que l'on trouve grace au pointeur de la
* pile.Compris,non ? Alors comprenez comment se passe un JSR-RTS
*-------------------------------
ADRESSE JSR $FF58 ; met le système en mode texte sans le Bell
   ; ce qui nous permettra de récupérer l'adresse
; haute de ADRESSE
 TSX  ; met le pointeur de la pile dans X
 LDA PILE,X ; c'est ICI! On prend l'adresse haute de ADRESSEeEe
   ; slot modulo 16, ASL : multiplie par 2
   ; Dans le cas du slot 6 A=$C6
 ASL  ; A=$8C
 ASL  ; A=$18
 ASL  ; A=$30
 ASL  ; A=$60
 STA $2B ; Sauve le slot modulo 16 dans $2B
*-------------------------------
* Les softs-switches s'actionnent de la façon suivante :
* Soft-Switch+slot modulo 16 soit en Assembleur dans X le slot
* modulo 16 : LDA soft-Switch,X (le LDA n'a aucune importance,
* cela pourrait etre STA, BIT, AND, ou tout autre instruction
* du moment que l'on peut l'indexer, X étant le slot)
*-------------------------------
 TAX  ; met la valeur trouvé précédemment dans X
 LDA $C08E,X ; (Q7L) prépare à la lecture
 LDA $C08C,X ; (Q6L) initialise le latch, inutile !
 LDA $C08A,X ; (DRV1) sélectionne le drive 1, si vous
   ; vouliez Booter avec le drive 2, à la place de
   ; 8A mettre 8B (soit pour 2e : C636:8B)
 LDA $C089,X ; (MOTORON) allume le drive
*-------------------------------
* Recalibre la tete de lecture au dessus de 80 pistes, je vous
* sens venir : "oh! l'autre! mort de rire il n'y a pas 80 pistes
* sur une disquette!". Bien sur, il y en a 'que' 34, mais
* c'est pour etre bien sur que la tete de lecture sera bien
* recalibrée en Piste 0, le bruit que vous entendez lors du
* Boot c'est la tete de lecture qui frappe contre le bord.
*-------------------------------
* NOTE : cette routine peut etre utile pour recalibrer la pioche
* pour vos programmes personnels ou pour certains cracks...
*-------------------------------
* Bouge la tete de lecture vers l'extérieur de la disquette,
* Il existe 8 commutateurs de deplacement du drive :
* C080: phase 0 off, C081: phase 0 on,
* C082: phase 1 off, C083: phase 1 on,
* C084: phase 2 off, C085: phase 2 on,
* C086: phase 3 off, C087: phase 3 on.
* pour déplacer vers l'intérieur: C081 C083
* pour déplacer vers l'extérieur: C083 C081
* Le déplacement d'1 piste ce fait par 2 phases
* Pour déplacer le bras il faut dans un premier temps :
* mettre toutes les phases off, puis commuter la une phase on
* et la précédente off.
* Ex. déplacement vers centre de 2 pistes :
* 0 off, 1 off, 2 off, 3 off puis
* 1 on, 0 off, 2 on, 1 off (une piste 2 phases en on et off)
* 3 on, 2 off, 0 on, 3 off (autre piste)
* 0 off, 1 off, 2 off, 3 off (fin)
*-------------------------------

 LDY #$50 ; soit 80 en décimal
RECALIBRE LDA PHASEOFF,X ; (PHASE 0 OFF) on passe à la phase suivante
 TYA  ; met Y dans A pour le calcul des phases
 AND #%00000011 ; (=$03) permet d'avoir 4 phases (0,1,2,3)
 ASL  ;
 ORA $2B ; mélange avec le slot, force les bits à 1
 TAX  ;
 LDA PHASEON,X ; phase suivante à ON
 LDA #$56 ; on attend le temps que le bras bouge
 JSR WAIT ; car ça ne se fait pas instantanément
 DEY  ; on passe à l'autre phase
 BPL RECALIBRE
*-------------------------------

*-------------------------------
 STA $26 ; adresse basse du buffer (soit 00 pour $800)
 STA $3D ; numéro de secteur à lire
 STA $41 ; numéro de la piste à lire, inutile pour le
; boot sachant que l'on à déja recalibré la
; pioche sur la piste 0, et sachant que le boot
; n'a pas de routine pour bouger la pioche sur
; une piste choisie.Ca sert comme une précaution
 LDA #$08 ; adresse haute du buffer (soit 08 pour $800)
 STA $27 ; sauve cette valeur ou donc on changera le
; secteur 0 de la piste 0
*-------------------------------
* Je vous demande votre attention svp, meme ceux qui sont au
* fond et qui dorment; cette partie est non seulement à bien
* comprendre pour bien maitriser la machine et savoir déplomber
* C.Q.F.D. ...
*-------------------------------
* C'est ici que nous allons lire le secteur qui est en $3D de la
* piste en $41 et va le stocker en $27 (08), $26 (00)
* Le marqueur (prologue) de champ de données sera cherché
* (D5 AA 96). On recommence tant qu'il ne sera pas trouvé
*-------------------------------
* Recherche des marqueurs du champ d'adresse (D5 AA 96)
* ou champ de données (D5 AA AD), suivant l'état de C
*-------------------------------

D5AA96 CLC  ; inhibe l'erreur
HC65D PHP  ; sauve le registre d'état avec
; C=0 champ d'adresse; C=1 champ de données
D5_ADRESSE LDA $C08C,X ; remplit le latch
 BPL D5_ADRESSE
HC663 EOR #$D5 ; est-ce 1 D5?
 BNE D5_ADRESSE ; si c'est le cas A=0 => si différent on relit
AA_ADRESSE LDA $C08C,X ; meme procédure que pour le D5 sauf que l'on
; chrch 1 AA maintenant.
 BPL AA_ADRESSE
 CMP #$AA ; est-ce 1 AA?
 BNE HC663 ; ce n'est pas 1 AA, peut-etre 1 D5?
 NOP  ; timing...
HC671 LDA $C08C,X ; encore meme procédure que pour le AA
 BPL HC671
 CMP #$96 ; est-ce 1 96? (champ d'adresse)
 BEQ HC683 ; oui, alors c'est ok on, saute en HC683
 PLP  ; restaure registre d'état avec C=0
 BCC D5AA96 ; on recommence à chercher D5 AA AD
 EOR #$AD ; trouvé champ de données (AD)
 BEQ HC6A6 ; on saute alors en HC6A6
 BNE D5AA96 ; non on recommence la recherche
*-------------------------------
* Analyse du champ d'adresse et décodage de ce
* qui est lu, semblable à la routine du DOS en $B944
*-------------------------------
* Dans le champ d'adresse se trouve le numéro de volume,
* le numéro de piste et le numéro de secteur codés en 4.4
* d'1 octet on obtient une paire de nibbles. (et vice versa)
* pour les coder on fait :
* LDA #BYTE  Format %xyxyxyxy
* LSR A      Format %0xyxyxyx
* ORA #$AA   Format %10101010
*  on a notre 1er octet de la forme %1x1x1x1x qu'on sauve
* LDA #BYTE  Format %xyxyxyxy
* ORA #$AA   Format %10101010
*  on a notre 2nd octet de la forme %1y1y1y1y qu'on sauve
*-------------------------------
HC683 LDY #$03 ; on va lire 3 fois 2 valeurs
HC685 STA $40 ; sauvons ça
HC687 LDA $C08C,X ; lit 1 nibble de format %1x1x1x1x
 BPL HC687
 ROL  ; Format
 STA $3C ; sauve valeur lue
HC68F LDA $C08C,X ; lit la suivante de la paire de nibbles
 BPL HC68F
 AND $3C ; le combine avec le précédent
 DEY
 BNE HC685 ; on recommence 2 fois
 PLP
 CMP $3D ; compare avec le no de secteur qu'on veut lire
 BNE D5AA96 ; ce n'est pas ça, lit 1 autre champ d'adresses
 LDA $40 ; on vérifie aussi si c'est la bonne piste
 CMP $41 ; oui c'est le cas, suite des opérations
 BNE D5AA96 ; non on relit champ adresses
 BCS HC65D ; on passe au champ de données
*-------------------------------
* Lecture du champ de données : lit 85 ($55) nibbles qui sont
* mis dans 1 buffer de $300 à $335. (buffer secondaire)
* Lecture de 255 ($100) nibbles qui sont mis dans 1 buffer de
* pointé par l'adresse en ($26) (soit en $26 LByte, $27 HByte)
* On verifie le checksum, on saute en $C65C s'il est incorect
* Denibblize (action de transformer de nibble en octet) dans
* le buffer pointé par($26). Incrémente le HByte du buffer($27)
* incrémente le numéro du secteur ($3D) et le compare avec $800
* pour savoir s'il faut lire un autre secteur.
*-------------------------------

HC6A6 LDY #$56 ; nbre de nibbles du buffer 2nd à lire + 1
HC6A8 STY $3C ; sauve ce compteur de nibbles
HC6AA LDY $C08C,X ; lit un nibble
 BPL HC6AA
 EOR H02D6,Y ; complémente les bits grace à la table
 LDY $3C ; charge la position du nibble à lire
 DEY  ; décrémente notre compteur
 STA H0300,Y ; sauve la valeur lue
 BNE HC6A8 ; on recommence pour 85 nibbles
HC6BA STY $3C ; sauve pointeur
HC6BC LDY $C08C,X ; lit nibble
 BPL HC6BC
 EOR H02D6,Y ; meme chose que ci-dessus
 LDY $3C ; idem ci-dessus
 STA ($26),Y ; sauve la valeur de l'octet ds le buffer
 INY  ; on recommence pour 256 nibbles
 BNE HC6BA ; pas encore fini on recommence
HC6CB LDY $C08C,X ; lit un nible, ceci est le nibble de checksum
 BPL HC6CB
 EOR H02D6,Y ; on calcule le checksum de tout ce qu'on a lu
; pour vérifier s'il n'y a pas erreur de lecture
; et compare le résultat obtenu avec la valeur  eul
; sur le disque
HC6D3 BNE D5AA96 ; erreur? Oui, il y en a une
 LDY #$00 ; On va commencer à décoder les Nibbles lus
HC6D7 LDX #$56 ; pointeur de valeurs sur buffer 2nd
HC6D9 DEX  ; le décrémente
 BMI HC6D7 ; X>0 non? alors on continue
 LDA ($26),Y ; prend 1 nibble du buffer 1aire
 LSR H0300,X ; décalage d'1 bit de l'octet qui lui est
; associé en buffer 1aire
 ROL  ; le met dans A (A contenant nibble du buf 1aire)
 LSR H0300,X ; sauve l'octet trouvé
 ROL  ; on recommence la meme opération encore 1 fois
 STA ($26),Y
 INY  ; incrémente pointeur du buffer 1aire
 BNE HC6D9 ; 255 valeurs Non? alors on continue
 INC $27 ; incrémente adresse haute du buffer
 INC $3D ;    "       secteur suivant a lire
 LDA $3D ; prend la valeur trouvée
 CMP H0800 ; on regarde s'il faut en charger encore
 LDX $2B ; pour un éventuel autre chargement
 BCC HC6D3 ; on charge encore un autre secteur
 JMP $801 ; The Happy End, on exécute ce que l'on a chargé
 HEX 000000

*-------------------------------
PILE = $0100
H02D6 = $02D6
H0300 = $0300
H0356 = $0356
H0800 = $0800
PHASEOFF = $C080
PHASEON = $C081
WAIT = $FCA8
*-------------------------------


Retour sommaire

hr Crackware

EPYX's cookbook.


 _____________________________________________________________________________
!                                                                             !
! METHODOLOGIE GENERALE POUR DEPLOMBER UN EPYX OU LA MEGA-RECETTE DE CUISINE! !
!______________________________________________                               !
!______________________________________________ File : The JokerSoft 10/ 2/89 !
!_____________________________________________________________________________!



   Il est impossible de faire une copie d'un original Epyx avec un quelconque
copieur sauf si vous le créez vous-meme en assembleur. C'est l'efficacité de
la désynchronisation de pistes employée par Epyx. Donc si vous programmez un
copieur qui recherche ces désynchros et qui les adaptent sur votre diskette,
vous aurez ainsi une copie qui boote, mais non déplombée.

   Le format des originaux Epyx n'est pas celui du Dos 3.3, mais celui du
Dos Patched, donc, d'une part, on peut faire une copie qui ne boote pas avec
Disk Muncher, et d'autre part, il faudra convertir l'original du format Dos
Patched au format Dos 3.3. On réalise l'opération avec Advanced Demuffin,
en ayant au préalable formatter une diskette, et en ayant taper le célèbre
*B942:18.

   On obtient donc une copie de l'original, qui sera copiable au Locksmith,
mais qui ne bootera pas car les désynchros sont toujours là.

   Nous allons donc employer la méthode du boot-tracing (aussi fort célèbre!) :
]CALL-151            ; entrée sous moniteur
*1600<C600.C700M     ; move du slot 6 en $1600
*16F8:4C 59 FF       ; CALL-151 après le faux reboot
*1600G               ; on lance ce faux reboot
*C0E8                ; éteint le drive
*801L                ; on liste le boot 1 du disk

   On recherche ainsi le premier vrai saut (pratiquement toujours direct et
rarement indirect dans ce boot 1 (800-8FF)). L'adresse de ce saut va
correspondre au début de la routine de protection.
   => $08MM:JMP $NN00 (rarement JSR)

   On applique la technique de boot-tracing (deuxième étape), on tape :
*16F8:A9 4C 8D MM 08 A9 59 8D MM+1 08 A9 FF 8D MM+2 08 4C 01 08
   => $08MM:JMP $FF59
*1600G
   Il va donc y avoir chargement de la routine de protection en $NN00, puis
plantage en assembleur. Ainsi, on pourra lister cette routine.
*NN00L

   On recherche, en tracant la routine, sa fin c'est-à-dire un JMP $PP00 (avec
PP=NN-5). Ce JMP se trouve donc à l'adresse $NNOO. Il faut donc éxécuter cette
routine de protection puis l'interrompre avant qu'elle ne continue à charger
le disk :

*16F8:A9 05 8D MM+1 08 A9 17 8D MM+2 08 4C 01 08
*1705:A9 4C 8D OO NN A9 59 8D OO+1 NN A9 FF 8D OO+2 NN 4C 00 NN
*1600G
*F0.FF
   => récupération des valeurs des EOR #$

   On recherche sur la routine de décodage des EOR #$ (celle qui commence en
$NN00) et elle se trouve toujours sur la piste $00 et au secteur $05 ou $08 ou
$09.

   Il faut alors intégrer sur cette routine, un petit programme qui décode
les secteurs de la RWTS avec ces EOR #$ correspondants :
   En P$00,S$0Q,O$00 (Q = 5, 8, ou 9) :
*NN00:A2 RR        LDX #$RR        ; RR = nbr d'EOR #$ - 1
      BD 10 NN     LDA $NN10,X     ; charge les EOR #$ qui sont en $NN10
      95 SS        STA $SS,X       ; SS = adr de la page 0 où il y a les EOR #$
      CA           DEX
      10 F8        BPL $NN02
      4C TT NN     JMP $NNTT       ; saute à la suite du chargement disk
      00 00
*NN10:mettre ici les valeurs des EOR #$.



   Ceci est une méthode essentielle mathématique et qui marche (disons) pour
tous les Epyx. Mais le problème est que maintenant il va falloir pour vous
piger toutes ces variables et bouffer tout ce fichier text : bon courage, mais
au moins cela vous fait économiser de l'argent, ah, bah, excusez moi, j'avais
oublié que l'on distribuait les cours de l'infame GDF.



   Maintenant je vous donne tous les types de désynchro sur les Epyx et dérivés
depuis près de 3 ans!

DESYNCHRO : SCHEMA TYPE 1 :
-------------------------
4 EOR : FC EE EE FC stockés en $F0
routine de décodage en P$0/5.ADR $BB00

Ex.: BOULDER DASH CONSTRUCTION KIT - CALIFORNIA GAMES - DONDRA - RAD WARRIOR -
STREET SPORTS BASKETBALL - TECHNOCOP (P$0/C.ADR $F700) - THE MOVIE MONSTER GAME


DESYNCHRO : SCHEMA TYPE 2 :
-------------------------
8 EOR : FC EE EE FC E7 EE FC E7 stockés en $F0
routine de décodage en P$0/5.ADR $BB00

Ex.: CHAMPIONSHIP WRESTLING - IMPOSSIBLE MISSION 2 - SPY VS SPY 3 - STREET
SPORT SOCCER - WINTER EDITION - (voire STREET SPORTS FOOTBALL)


DESYNCHRO : SCHEMA TYPE 3 :
-------------------------
8 EOR (inverse) : E7 FC EE E7 FC EE EE FC stockés en $F0
routine de décodage en P$0/9.ADR $5F00

Ex.: DIVE BOMBER


DESYNCHRO : SCHEMA TYPE 4 :
-------------------------
8 EOR (inverse) : E7 FC EE E7 FC EE EE FC stockés en $F8
routine de décodage en P$0/5

Ex.: L.A. CRACKDOWN (ADR $F000) - SPIDERBOT (ADR $BB00)


DESYNCHRO : SCHEMA TYPE 5 :
-------------------------
8 EOR : FC EE EE FC E7 EE FC E7 stockés en $F0
routine de décodage en P$0/8.ADR $1A00
+ vérif. sur le numéro de volume : V001

Ex.: SUMMER EDITION



   N'ayant pas eu les originaux suivants entre les mains, je ne peux les
classer dans les schémas type cités plus hauts :

DEATH SWORD - DESTROYER - STREET SPORTS BASEBALL - SUB BATTLE SIMULATOR - WHERE
IN EUROPE IS CARMEN SANDIEGO? - WORLD GAMES



_EPYX'S_COOKBOOK_________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Arkanoid.


 _____________________________________________________________________________
!                                                                             !
! ARKANOID (C) 1988 Taito                 Cracked by THE JOKERSOFT - 18/12/88 !
!_____________________________________________File : THE JOKERSOFT_-_28/ 8/89_!



   L'original d'Arkanoid est copiable au Locksmith, mais la duplication plante
en vous affichant une page text bien crade. Boot traçons alors le soft :

]CALL-151
*1600<C600.C700M
*16F8:4C 59 FF
*1600G
*C0E8
*801L

   Ce début de boot 1 sert essentiellement à charger les quelques secteurs
utiles pour la suite du chargement. Il stocke $BC00 en $80 et $81 (adresse
haute du chargement de ces sect), et $05 en $8FB (c'est-à-dire le nbr de sect à
charger.), puis il DEC $81 ($BC->$BB->$BA->$B9->B8) et DEC $8FB (5->4->3->2->1)
et d'après la table des secteurs qui se trouve à la fin du boot 1, on a
l'organisation suivante :
1° sect : P$0/5 . offset $BC00
2° sect : P$0/7 . offset $BB00
3° sect : P$0/9 . offset $BA00
4° sect : P$0/B . offset $B900
5° sect : P$0/D . offset $B800

   En $853, on trouve le premier JMP en $BC00. Il nous faut donc récupérer
cette routine en $BC00.

*16F8:A9 59        LDA #$59
      8D 54 08     STA $854
      A9 FF        LDA #$FF
      8D 55 08     STA $855
      4C 01 08     JMP $801
*1600G
*BC00L

   On y trouve une routine qui détruit la page HGR ($BC09-$BC1B) et qui
l'affiche ($BC1C-$BC27). Cela permet alors de charger des données du programme
en page text ($400-$7FF) sans que cela se voit.
   Puis il JMPe, il JSRe, il RTSe partout mais cela correspond aux chargements
des pistes qui vont constituer le coeur du programme Arkanoid et ses 9 premiers
tableaux.
   Mais ce qui nous intéresse est en $BC4D, on trouve un JMP en $4000 qui est
notre routine de protection du disk. Il nous faut donc aussi récupérer ce
programme en $4000.

*16F8:A9 05        LDA #$05
      8D 54 08     STA $854
      A9 17        LDA #$17
      8D 55 08     STA $855
      4C 01 08     JMP $801
      A9 59        LDA #$59
      8D 4E BC     STA $BC4E
      A9 FF        LDA #$FF
      8D 4F BC     STA $BC4F
      4C 00 BC     JMP $BC00
*1600G
*4000L

   Il faut attendre quelques secondes avant que le programme ne se plante car
il faut que toutes les pistes se chargent. La vérif. de protection est donc
très loin dans le boot.

   A partir de $4010, on a ce qui nous intéresse : un beau nibble count!

*4010:AD F8 40     LDA $40F8     ; il charge $40F8
      D0 03        BNE $4018     ; s'il est négatif, va en $4018
      4C 00 02     JMP $0200     ; sinon va en $200 (buffer clavier)
                                 C'est ce que l'on veut pour que cela ne plante
                                 pas, alors pourquoi ne pas forcer le prog. à
                                 le faire...
*4018:AD 51 C0     LDA $C051     ; commute en page text d'une page HGR
                                 Puis rout. qui sert à planter le soft.

   Il nous suffit donc de NOPer le BNE (D0 03) et le tour est joué.

   On recherche cette rout. sur le disk :
P$20/0.13:D0 03 -> EA EA


   Et maintenant, je vous explique comment ils ont posé leurs variables utiles
pour faire le fix d'Arkanoid, malgré le TBT's fixint de moi-meme!

P$1/1.6C (offset $116C) :
   LDA #$00   ; player 1 = 00 et player 2 =01
   STA $9A    ; case mémoire
   LDA $AD    ; numéro du round marqué
   STA $87    ; case pour le premier joueur
   STA $88    ; case pour le deuxième joueur
   LDA #$01
   STA $CF
   LDA #$02   ; nbr de vie => P$1/1.7B (adr $117B)
   STA $84    ; case pour le premier joueur
   STA *85    ; case pour le deuxième joueur
   ...

P$1/4.5C (adr $145C) : D6->B5 => décrémention des vies supprimée
P$1/D.65 (adr $1D65) : F6->B5 => incrémention des vies supprimée

   Mais aussi une petite bidouille de "The Satanic" pour accélérer la vitesse
de la balle dont la lenteur fait peur :
P$9/4.D6 : F8->FD
   En effet, il a retrouvé la boucle d'attente qui controle la vitesse de la
balle, et il l'a shunté. Cette rout. se décomposant alors comme suit :
CF:LDX #$80 <-------------
D1:DEX                    !
D2:BNE $D1                !
D4:DEY <----!             !
D5:BNE $D4 -- (was $CF) --
D7:RTS


   Dernière nouvelle : certaines versions du TBT's fixint plantent, en effet on
ne peut jouer qu'en utilisant les vies infinies, alors on corrige cette erreur
: P$1D/E.93 : 1F->1D
   Alors là, on se sent mieux...

   Dernière heure : je viens de finir Arkanoid GS (vous croyez tout de meme
pas que je joue sur la version Apple 2!), c'est cool, 33 tableaux, environ
1.600.000 pts et une cinquantaine de coups de boule dans la gueule de Doh pour
que Vaus soit victorieux!!! Mais Arkanoid 2 : The Revenge Of Doh (version GS)
est encore plus génial, rapide et compliqué!

   Dernière minute : il paraitrait qu'il existe un autre casse-briques sur
Apple 2 et qui aurait été fait par des anciens déplombeurs, ah bon!

   Dernière seconde : un autre groupe de hackers français auraient préparé un
nouveau casse-briques en DHGR ???


  
_ARKANOID________________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Art of war at sea.


-------------------------------------------------------------------------------
THE ANCIENT ART OF WAR AT SEA <K> BY LOOCKHEED FROM THE REGRETTED BRAIN TRUST !
-------------------------------------------------------------------------------


   Bon tout d'abord je voudrais remercier THOR & SHOGUN pour l'original (il
coute la peau des burnes en restant correct!).

  Kan on voit BR0DERBUND, on se dit "Merde! Encore un 18s!!!". Eh bien, pas du
tout not at all car c'est une bete protection (j'ai pas cherche à la décortikée
mais ça doit etre une bete recherche de nibble plankée!). En plus on fait
l'économie d'un boot de Demuffin car il est tout à fait copiable au Locksmith!
Enfin un BOOT 1 tout ce qu'il y'a de plus banal et un traçage d'une facilité
déconcertante...

   Donc après le BOOT 1 un bo et tres visible JMP $8000, et puis en zieutant ce
qu'il y'a là, on tombe sur une connerie du genre :

805A:20 E9 81      JSR $81E9  ; Pour vous ça ne veut peut etre rien dire, mais
805D:90 03         BCC $8062  ; pour n'importe quel déplombeur ceci est le
805F:4C 78 81      JMP $8178  ; prototype (l'archetype pour notre Apple) de
8062:AD 98 BF      LDA $BF98  ; la protection dite "beauf".

   Le premier JSR va à la vérif' (que je n'ai pas cherché à décortiker car à
mon avis vu comment il l'a planké le reste n'aurait pas du etre très
folichon..!)
   Le BCC est d'une banalité!!! Combien ai-je vu de routines plus ou moins
plombeuse se servir de ce procédé usé! En effet la plupart des programmeurs
utilisent cette instruction comme suit :

   JSR  n'importe quelle routine de vérif'

  Puis deux cas se présentent :
- soit on teste si tout va bien :
  (manière qu'à choisi le plombeur de "Ancient Art Of War At Sea")

   BCC  touva bien

- soit on teste si tout va mal :

   BCS  Ciel mon mari!

  Donc si vous avez compris le truc, la routine se branche en $8062 si le disk
n'est pas une ignoble copie faite par un vil pirate. Kan je suis allé voir ce
qu'il y'avait en $8178 je ne fus pas surpris de trouvé un LDA #$D2
                                                          STA $400, routine qui
affiche le R du Reboot propre à tous les Brody...


   Donc pour le déflorer, remplacez betement le #$4C figurant en Piste $00
Secteur $01 Octet $5F en un bo #$2C...



                                      Ca manke de sex tout ça...  LOOCKHEED.


Retour sommaire

hr Crackware

Bad Dudes.


 _____________________________________________________________________________
!                                                                             !
! BAD DUDES (C) 1988 Data East                Cracked by LOOCKHEED - 18/ 3/89 !
!_____________________________________________File : THE JOKERSOFT_-_10/ 7/89_!



   Bad Dudes a exactement la meme protection que Platoon, on retrouve ce soft
copiable au Locksmith 6.0, au boot un chargement de 3 secteurs ($800-$900-$A00
(800:03)), la rout. de nibbles count en $A00 (avec les LDA $C08C,X), en $A4A
le JMP $C600 (reboot), et le JMP simulé final (JMP $801). Toutes les
explications et le source de la protection sont dans le fichier PLATOON.
   Ainsi on déplombe Bad Dudes, en faisant :
P$0/0.00:01 A5 27 C9 09 avec un éditeur de secteurs sur une copie Locksmith.



   Il existe 3 versions de Bad Dudes signées THE BRAIN TRUST :
1/ Avec l'anim de l'année : la SPOT SYNCHRONISED ANIMATION BY LOOCKHEED, mixed
DHGR et DGR, mais hélas ne tournant que sur les Apple 2e, à cause de la
synchronisation du spot $C070.
2/ La version Black Chest avec une digit des tetes de tous les membres du
BRAIN TRUST.
3/ La version TBT's fixint avec une digit de la pub Atari/Amiga de Dragon
Ninja, pour montrer la différence entre leur présentation merdique et la notre.

Dans toutes les versions, vous trouverez une doc. de 30 secteurs en face 2.



   Puisque nous parlons de fix, je vous donne celui-ci :
time : P$4/C.22 : 49 (STA $FF0F) (adr $DE1E) (file G)
coup : P$4/C.05 : 05 (STA $FFD6) (adr $DE01) (file G)
vies : P$3/6.A9 : 02 (STA $FFD5)

time inf. : P$20/5.55 : 01->00 (adr $FE51)
coup inf. : P$05/F.39 : CE->AD (adr $EB35)
vies inf. : P$04/4.FF : CE->AD (adr $E6FA)



   Et maintenant nous vous confions nos recherches sur le Quick-DOS,
(essentiellement trouvées par Patchman) :
On remarque en catalog que tous les noms de fichiers ne font qu'une lettre!
Dans le tracing de ce Dos, on retrouve souvent la séquence (comme dirait
Nicolas Hulot!) : LDA #$ / LDX #$ / LDY #$ / JSR SEEKABS comme un Acco-boot!!!
Explications :
- A9 : LDA #$nom du fichier sur un octet (A->Z transcris en ASCII),
- A2 : LDX #$00 ou 01 => fichier éxécutable OUI ou NON,
- A0 : LDY #$XX => XX = bit haut de l'adresse de début où chargée,
                   (HIGH = XX : LOW = 00)
- 20 : JSR SEEKABS => permet le chargement grace aux 3 données (cool!!).



_BAD_DUDES______________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Bubble Bobble.


 _____________________________________________________________________________
!                                                                             !
! BUBBLE BOBBLE (C) 1988 TAITO                  Cracked by BYTLEJUICE  9/9/89 !
!________________________________________________File_:_THE JOKERSOFT_18/9/89_!



   En faisant un p'tit boot tracing rapidos de Bubble Bobble sur une version
déjà déprotégée, je me suis aperçu qu'il devait y avoir un certain gdf qui se
retournait dans sa tombe car la vérif' de protec' était certes un nibbles count
mais le boot était complètement différent, mince, cela va faire mal à ses
finances avec ces cours. Et dire qu'il avait prédit la meme protection pour
tous les Taito à venir, des titres comme Target Renegade, Qix mais aussi Bubble
Bobble (famous arcadia games). Et bien, il l'a encore eu dans le cul... eh oui,
souvenez-vous qu'il existait aussi un cours sur les protections actuelles et
futures des Sierra On-Line, ce fut alors la meme chose (si ce n'est pire) car
Sierra ne plombe plus ces softs. Cet escroc qui voulait devenir riche était
décidemment plus doué pour le marchandage de tapis, que pour le cracking dont
il se faisait une gloire...


   Ce petit boot-tracing m'a permis de retirer les infos suivantes :
- Le Boot 1 est très proche du Boot 3.3 que l'on connaissait sur Apple depuis
1980, ainsi on trouve en $84A : JMP $B700 (<=> P$0/0.4A : 4C 00 B7),

- En $B700, rt. classique se parametrant sur les données d'une RWTS 3.3 qui se
conclut en $B73B par un JMP $9800 (<=> P$0/1.3B : 4C 00 98),

- En $9800, rt. qui charge les pistes à la vitesse du bon vieux DOS 3.3,
c'est-à-dire la vitesse d'une charrue tirée par un boeuf dopé aux hormones au
meilleur de sa forme et avec le vent dans le dos à 14h00 (heure GMT). Cette
rt. se terminant par un JMP $6000 (<=> P$14/0.3E : 4C 00 60)

- En $6000, rt. qui affiche INSERT OTHER SIDE, etc...

   Mais hélas (ayant travaillé sur la version TBJ) je n'ai pas vu le shuntage
de la protec' qui était (encore et quand meme) un nibble count...

   Ceci pourra quand meme vous aider si vous avez l'original de B.B dans les
mains (pas comme moi, j'insiste!!!)

   Mais dans mon infime bonté, je vous file le fix de B.B qui ne sert à rien
car vous disposez d'une option "time runs out" qui vous fait reprendre le jeu
où vous en étiez lors du Game Over (il va donc de soit qu'un fixed game ne
serait qu'une perte de temps!!!)
   P$5/5.5 : 02 (STA $DE) => nbre de vies.

   Et puis on a souvent critiqué la vitesse du premier Taito : Arkanoid, alors
comme je pense que celle de B.B est convenable, je vous propose un fix
ralentissant le jeu, tout simplement par esprit de contradiction :
   P$9/9.51 et 56 : 01 => vitesse du jeu
      (rem : une valeur plus grande ralentie! mettre 5 par exemple)

   Et puis pour faire vraiment chier Taito, un fix pour accélérer la vitesse de
notre petit "bulleur" lors de la démo (au début) et pendant ses descentes :
   P$8/5.CD : 01 => vitesse de déplacement hors jeu
      (rem : une valeur plus grande accélère! mettre 3 par exemple)

Allez bon jeu, car il est pas trop mal celui-là pour une fois!!!



_BUBBLE_BOBBLE___________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Crossbow.


 _____________________________________________________________________________
!                                                                             !
! CROSSBOW (C) 1988 Absolute Entertainment, Inc.                THE JOKERSOFT !
!_____________________________________________________________________________!



   Comment extraire la musique de la présentation de Crossbow ?

Prendre un Dos 3.3 normal.
Faites BLOAD G.LOGO avec Crossbow dans le drive.
Tapez CALL-151
*62B0:EA * 3
*62B9:EA * 9
Mais il faut que la case mémoire $6F contienne la valeur $00 :
*62A4:A9 00 85 6F
Puis BSAVE MUS.CROSSBOW,A$62A4,L$15C, ce qui fait 3 secteurs.



_CROSSBOW________________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Dive Bomber.


 _____________________________________________________________________________
!                                                                             !
! DIVE BOMBER (C) 1988 Epyx            Cracked by C.C+COP+LCKD+TJS - 24/ 9/88 !
!_____________________________________________File : THE JOKERSOFT_-_ 6/ 2/89_!



   Tu veux de la protection Epyx et bien en voilà. Nous sommes reparti pour
vous expliquer ce type de désynchro de pistes appliquée à Dive Bomber, c'est-
à-dire DamBuster II.

   Faire une copie demuffinisée de l'original.

   Appliquons la technique de boot-tracing.

   En analysant le boot 1, on trouve en $862 un JMP $5F00, listing où se
trouve la protection.

   On récupère les valeurs de désynchro par la méthode habituelle. On trouve
E7 FC EE E7 FC EE EE FC (EOR #$ inverses de ceux d'Impossible Mission 2!)

   Puis on implante notre chère rout. en $5F00 pour décoder tout ça (ici,
cela correspond à la piste $00, secteur $09, octet $00) :

   A0 07      LDA #$07
   B9 10 5F   LDA $5F10,Y
   99 F0 00   STA $00F0,Y
   88         DEY
   10 F7      BPL $0002
   4C 7C 5F   JMP $5F7C
   00 00
   E7 FC EE E7 FC EE EE FC

   Et ça boot impec.



_DIVE_BOMBER_____________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Dondra.


 _____________________________________________________________________________
!                                                                             !
! DONDRA (C) 1988 Spectrum Holobyte             Cracked by COP+TJS -   / 4/88 !
!_____________________________________________File : THE JOKERSOFT_-_10/ 2/89_!



   Tu veux de la protection Epyx et bien en voilà. Nous sommes reparti pour
vous expliquer ce type de désynchro de pistes appliquée à Dondra, qui n'est en
fait qu'un Spectrum Holobyte (tiens, ils se revendent leur plombage entre eux!)

   Faire une copie demuffinisée de l'original.

   Appliquons la technique de boot-tracing.

   En analysant le boot 1, on trouve en $84A un JMP $BB00, listing où se
trouve la protection.

   On récupère les valeurs de désynchro par la méthode habituelle. On trouve
FC EE EE FC (Il n'y a ici que 4 EOR #$ par rapport à d'autres qui en ont 8!)

   Puis on implante notre chère rout. en $BB00 pour décoder tout ça (ici,
cela correspond à la piste $00, secteur $05, octet $00) :

   A9 FC       LDA #$FC
   85 F0       STA $F0
   85 F3       STA $F3
   A9 EE       LDA #$EE
   85 F1       STA $F1
   85 F2       STA $F2
   4C 7A BB    JMP $BB7A

   Et ça boot impec.



_DONDRA__________________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Force 7.


 _____________________________________________________________________________
!                                                                             !
! FORCE 7 (C) 1987 Datasoft/Intellicreations      (K) COP+LCKD+TJS -   / 6/88 !
!_____________________________________________File : THE JOKERSOFT_-_11/ 2/89_!



   L'original de Force 7 est copiable au Locksmith, mais la duplication plante
en écrivant : PLEASE USE ORIGINAL, après avoir affiché la page graphique de
présentation. Boot traçons alors le soft :

]CALL-151
*1600<C600.C700M
*16F8:4C 59 FF
*1600G
*C0E8
*801L

   En $84A, on trouve le premier JMP en $B700. Il nous faut donc récupérer
cette rout. en $B700 pour voir s'il n'y a pas la vérif. de protection qui
contiendrait la prog. qui affiche ce message si désagréable...

*16F8:A9 59        LDA #$59
      8D 4B 08     STA $84B
      A9 FF        LDA #$FF
      8D 4C 08     STA $84C
      4C 01 08     JMP $801
*1600G
*B700L

   En $B741, on trouve le premier JMP en $1E00 qui est notre vérif. de
protection du disk. Il nous faut donc aussi récupérer ce programme en $1E00.

*16F8:A9 05        LDA #$05
      8D 4B 08     STA $84B
      A9 17        LDA #$17
      8D 4C 08     STA $84C
      4C 01 08     JMP $801
      A9 59        LDA #$59
      8D 42 B7     STA $B742
      A9 FF        LDA #$FF
      8D 43 B7     STA $B743
      4C 00 B7     JMP $B700
*1600G
*1E00L

   En $1E00, il allume la page HGR et il initialise les vecteurs reset. Puis en
$1E2A, on trouve un JSR $1EF9. Allez on y saute : 1EF9L. On y trouve 2
initialisations fort intéressantes pour la suite de la rout. :
*1EFC:A0 00        LDY #$00
      8C B9 1E     STY $1EB9
      A9 4A        LDA #$4A
      8D BA 1E     STA $1EBA
   Alors là réflechissons 30 sec., ces 2 valeurs $1EB9 et $1EBA se trouvent en
plein dans notre listing ($1E00-1FFF), mais à quoi cela peut-il bien lui
servir?
   Continuons à tracer ce prog. :
 ....
*1F25:CMP #$CC   ; il compare la première série de headers CC AA 96
 ....            ; Etrange ce CC normalement c'est DE, NOPons ce CMP #$CC.
*1F2E:CMP #$AA
 ....
*1F37:CMP #$96
 ....
*1F3B:STY $1EB9  ; il stocke le résultat en $1EB9
 ....
*1F46:CMP #$D5   ; il compare la deuxième série de headers D5 DE AA EB
 ....
*1F4F:CMP #$DE
 ....
*1F58:CMP #$AA
 ....
*1F61:CMP #$EB
 ....
*1F65:STY $1EBA  ; il stocke le résultat en $1EBA
 ....
 ....
*1F9F:AD B9 1E     LDA $1EB9     ; il charge la valeur $1EB9
      C9 10        CMP #$10      ; il la compare à $10
      B0 C6        BCS $1F6C     ; si celle-ci est mauvaise, va en $1ECC
      AD BA 1E     LDA $1EBA     ; il charge la valeur $1EBA
      C9 0B        CMP #$0B      ; il la compare à $0B
      B0 BF        BCS $1F6C     ; si celle-ci est mauvaise, va en $1ECC
      ..
      60           RTS           ; sinon tout va bien, on retourne à
                                 l'appelant!

   Mais alors qu'est-ce que c'est que cette foutue rout. en $1ECC?
*1ECCL
   Ce n'est en fait que la prog. qui repasse en mode text, qui affiche la
phrase : PLEASE USE ORIGINAL, et qui fait tout planter, tout simplement en
bouclant sur elle-meme : *1EE3:JMP $1EE3.
   Donc en NOPant toute la rout. en $1F9F, on élimine cette vérif.
   Mais le problème est qu'il va faire deux autres vérifs : on continue donc
à boot-tracer le listing :

Check 2 = *1E5C:AD B9 1E     LDA $1EB9     ; il charge la valeur $1EB9
                C9 10        CMP #$10      ; il la compare à $10
                B0 C7        BCS $1E2A     ; il retourne à l'endroit où l'on
                                           avait trouvé le JSR $1EF9 et donc
                                           il boucle, et il finira donc par
                                           afficher : PLEASE USE ORIGINAL.

Check 3 = *1EAD:AD BA 1E     LDA $1EBA     ; il charge la valeur $1EBA
                C9 0B        CMP #$0B      ; il la compare à $0B
                B0 AD        BCS $1E61     ; il va trouver un autre BCS $1E2A
                                           qui va le rebrancher sur le
                                           JSR $1EF9 et on connait la suite...

   Donc on NOPe bestialement ces 2 checks (soient NOP * 7), et on est
tranquille.

   Bon, on a complétement tracé et décortiqué cette vérif. On a NOPé un bon
nombre de fois, il faut alors rechercher tout cela sur le disk. Déjà la rout.
$1E00-1EFF se trouve en P$1/E et $F. Recherchons les octets :

P$1/F.25:C9 CC -> EA * 2
P$1/F.9F:AD B9 1E C9 10 B0 C6 AD BA 1E C9 0B B0 BF -> EA * 14
P$1/E.5C:AD B9 1E C9 10 B0 C7 -> EA * 7
P$1/E.AD:AD BA 1E C9 0B B0 AD -> EA * 7

   Et voilà, plus jamais vous n'aurez cette affreux message PLEASE USE ORIGINAL
non mais c'est affligeant de voir des choses comme ça, mais ça fait quand meme
30 NOP pour cette rout. d'un header de début de champ données qui était
modifié.



   Je vous refile le fix de Force 7 que j'ai fait et qui se trouve déjà dans
Starfix 6 (on ne sait jamais peut-etre que vous ne l'avez pas!)

1/ Touches au clavier :
   esc = pause
   ctrl-R = restart
   ctrl-S = sound on/off

2/ Table des variables pour les 7 personnages : (adr.$F8XX)
   P$1C/8.47 : saved
          4E : health
          55 : fatigue
          5C : rounds
          63 : grenades
          6A : flames

3/ Noms des personnages :
   P$1C/A.47+(15*(X-1))

4/ Health : (C.M $F84E)
   P$1B/2.63 : DE -> BD
          66 : DE -> BD
          69 : DE -> BD
          6C : DE -> BD
ctrl-P remet votre santé au maximum.

5/ Fatigue : (C.M $F855)
   P$1B/9.49 : FE -> BD
          56 : DE -> BD
          8D : DE -> BD

6/ Rounds infinites : (C.M $F85C)
   P$1B/7.A3 : 01 -> 00 => sub machine gun
        8.68 : 01 -> 00 => automatic H20

7/ Grenades infinites : (C.M $F863)
   P$1B/8.01 : 01 -> 00 => grenade launcher

8/ Flames infinites : (C.M $F86A)
   P$1B/7.2E : 01 -> 00 => flame thrower

9/ Humans : (C.M $D019)
   P$1B/2.04 : 01 => dec du nb d'humains sauvés en 1 fois.
          0D : 01 => inc du nd d'humains sauvés en 1 fois.

10/ Battle unit : (C.M $F84D)
   P$1B/2.82 : 87 -> FF => tps max pour etre ds le Battle Unit
        9.97 : CE -> AD => tps inf. (fix non conseillé car on ne peut plus
                                     sortir du Battle Unit.)

11/ Score : (C.M $F84A)
   P$1C/B.84 : 01 -> X => score de X00 pts en X00 pts.

12/ Un fixint de "FORCE SEVEN" a été réalisé par THE BRAIN TRUST et circule!!!
Il s'appelle "FORCE 7.2 : ZE COOL FIX!"



_FORCE_7_________________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Impossible mission 2.


 _____________________________________________________________________________
!                                                                             !
! IMPOSSIBLE MISSION 2 (C) 1988 Epyx / FACS    Cracked by LCKD+TJS - 27/12/88 !
!_____________________________________________File : THE JOKERSOFT_-_ 6/ 2/89_!



   Tu veux de la protection Epyx et bien en voilà. Nous sommes reparti pour
vous expliquer ce type de désynchro de pistes appliquée à Impossible Mission 2.

   Faire une copie demuffinisée de l'original.

   Appliquons la technique de boot-tracing.

   En analysant le boot 1, on trouve en $83A un JMP $BB00, listing où se
trouve la protection.

   On récupère les valeurs de désynchro par la méthode habituelle. On trouve
FC EE EE FC E7 EE FC E7.

   Puis on implante notre chère routine en $BB00 pour décoder tout ça (ici,
cela correspond à la piste $00, secteur $05, octet $00) :

   A0 07      LDA #$07
   B9 10 BB   LDA $BB10,Y
   99 F0 00   STA $00F0,Y
   88         DEY
   10 F7      BPL $0002
   4C 7A BB   JMP $BB7A
   00 00
   FC EE EE FC E7 EE FC E7

   Et ça boot impec.



   Et en plus, on vous file le fix :

P$9/2.0E : sec   (STA $20E) => valeur des secondes
P$9/2.21 : min   (STA $20F) => valeur des minutes
P$9/2.60 : heure (STA $210) => valeur des heures
P$9/2.06 : 01 -> 00 => bloque les secondes
P$9/2.19 : 01 -> 00 => bloque les minutes
P$7/E.2A : 01 -> 00 => bloque les heures



   And now, change your Apple 2 in a MIA9366B pocket computer, Elvin!



_IMPOSSIBLE_MISSION_2____________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Jaws.


 _____________________________________________________________________________
!                                                                             !
! JAWS (C) 1989 Box Office / StarSoft                           THE JOKERSOFT !
!_____________________________________________________________________________!



   Comment extraire la musique de la présentation de Jaws ?

Prendre un Dos 3.3 normal.
Faites LOAD JAWS #1
Ne conservez que les lignes de 40 à 48.
Puis RUN.
Il ne chargera que les fichiers :
- JAWS.PLAY,A$300,L$D0 (2 sect.)
- M.JAWS.SONGFIN,A$2900,L$282 (4 sect.)



_JAWS____________________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

L.A. Crackdown.


 _____________________________________________________________________________
!                                                                             !
!       Déplombage de "L.A. CRACKDOWN" par THE JOKERSOFT et LOOCKHEED         !
! --------------------------------------------------------------------------- !
!    Un super fichier explicatif sur le comment du pourquoi de ce plombage    !
!  Fait le 29/7/88 jour de l'achat du 14ème soft Black Chest et de son crack  !
!_________________________________________________________________________TJS_!



Ce soft comme beaucoup d'autres qui sont sortis récemment chez EPYX, est
lisible au DISK MUNCHER et se convertit au format 3.3 avec ADVANCED DEMUFFIN.

]BLOAD ADVANCED DEMUFFIN 1.1       ;disponible dans toutes les bonnes crèmeries
]CALL-151
*B942:18 N 800G                    ; classique mais si efficace
>CONVERT DISK                      ; Y(ES) si nécessaire

Et copiez les 2 faces en ayant pris soin auparavant d'avoir formatter de votre
disk vierge.

Puis on boote-trace :

]CALL-151

*1600<C600.C6FFM
*16F8:60

*1600G                             ; reboot
*C0E8                              ; permet d'éteindre le lecteur

*801L                              ; examinons le BOOT1

en 807: JSR $861
et 861: AD 81 C0 AD 81 C0
   ... suite
   88B: AD 83 C0 AD 83 C0          ; tiens on est dans la bank 2
   891: 60                         ; on retourne en 80A
en 80A: suite
et 839: 6C 3E 00                   ; JMP ($003E) çà ressemble bcp à du boot 3.3
                                     <=> JMP $C65C

On continue notre listage et on touve le saut fatidique :

   84D: 4C 00 F0                   ; JMP $F000 en plein dans la bank

Mais qu'il y a t'il en $F000?

On reboote le soft puis 2 secondes après le boot on fait ctrl-pomme-reset puis
très rapidement ctrl-reset, puis :

]CALL-151

*300:AD 83 C0 AD 83 C0 A0 00 B9 00 F0 99 00 20 C8 D0 F7 EE 0A 03 EE 0D 03
     AD 0D 03 C9 21 D0 E8 AD 81 C0 AD 81 C0 60

*300G

C'est-à-dire une super routine de move $F000 (bank) en $2000 (ram normale).

*2000L

2000-   A9 00       LDA   #$00     ; début de la routine (avant en $F000)
2002-   8D 78 04    STA   $0478
2005-   A9 40       LDA   #$40
....
200E-   85 FC       STA   $FC      ; mais que stocke t'il en page zéro?
....
201A-   85 FD       STA   $FD      ; mais c'est dingue çà!!!
....
202B-   A0 00       LDY   #$00     ; on saute de joie, c'est la verif'
202D-   BD 8C C0    LDA   $C08C,X
2030-   10 FB       BPL   $202D
....
2043-   C9 E7       CMP   #$E7     ; vous avez dit bizarre!
....
204C-   C9 E7       CMP   #$E7     ; comme c'est bizarre!
....
2055-   C9 E7       CMP   #$E7     ; vous avez dit étrange!
....
2068-   C9 EE       CMP   #$EE     ; comme c'est étrange!
....
2075-   99 00 00    STA   $0000,Y  ; on tiens presque le bout
....
207A-   30 F4       BMI   $2070    ; fin de la vérif'
207C-   A9 00       LDA   #$00     ; routine qui décode les EOR #
207E-   A8          TAY
207F-   85 F0       STA   $F0      ; encore dans la page zéro
....
208E:   6C FD 08    JMP   ($08FD)  ; ca ressemble toujours à un boot 3.3

On décide alors de regarder ce qu'il y a dans la page zéro :

*F0.FF

*F0- 00 EE 00 00 D5 AA 96 DE
*F8- E7 FC EE E7 FC EE EE FC

A l'aide de DISKFIXER V4.0 (et surtout pas MOBBY DISK II) on rentre la routine
suivante :

P$00, S$05 (c'est-à-dire ORG$F000), O$2B :

A9 FC 85 F9 85 FC 85 FF A9 EE 85 FA 85 FD 85 FE A9 E7 85 F8 85 FB 4C 7C F0

On met les EOR # :

- FC dans F9, FC, FF,
- EE dans FA, FD, FE,
- E7 dans F8, FB

Puis on saute à la routine qui décode ces EOR #, en $F07C.

Le prog. sauve des parties sur le disk (en piste $0F), mais il a une RWTS
classique, on pourra d'ailleurs repérer les headers avec Nibbles Away :
D5 AA 96  DE AA EB  D5 AA AD.

Pour finir, je peux vous dire qu'il y a un catalog sur le disk mais il ne sert
à rien, peut-etre a t'il été oublié par les programmeurs!!!



_______________________________________IT'S ANOTHER CRACK FROM THE BRAIN TRUST_


Retour sommaire

hr Crackware

Might and Magic II.


 _____________________________________________________________________________
!                                                                             !
! MIGHT AND MAGIC 2 (C) 1988 New World Computing  <K> Oliver TWIST - 18/ 1/89 !
!                                         File fix : The JOKERSOFT - 11/ 7/89 !
!                                       File crack :  Oliver TWIST -  4/ 9/89 !
!                                   Révision crack :  Oliver TWIST -  9/ 8/89 !
!________________________________Correction finale : The JOKERSOFT - 10/ 9/89_!




        Longue vie à tous...



        Ouais, finalement je me suis décidé pour écrire ce giga fichier... En
fait, c'est après avoir réfléchi longuement, que je me suis dit qu'il ne serait
pas résonnable de quitter ce monde de gloire infinie et de jouissance éternelle
provoquées par les cris des protections vaincues auxquelles je rends hommage
pour les heures passées, sans que mon imagination débordante ne fasse un
Giga-dernier-fichier-délire-qui-tue-tout-le-monde. Alors je vous explique la
protection et puis, comme dans le TOP 50, la place est largement réservée aux
MEGAMIX divers, je laisserais la place à THE JOKERSOFT qui fera son MEGAFIX
pour changer un peu.


        Tiens, maintenant qu'on va tous mourir, je vais vous dire un truc... Je
ne sais pas si vous vous rappelez, mais il fut un temps où des rumeurs, qui
provenaient pourtant d'une idée considérée comme secrète, couraient sur le
Brain Trust et Dechavanne... D'ailleurs quelle ne fut pas ma surprise lorsqu'un
blaireau me lança un jour au téléphone ces quelques phrases non dénouées
d'interet :
        - Alors Oliver, où c'est-y qu'elle en est cette émission avec
Dechavanne et où c'est-y qu'elle en est ???


        Enfin, il y a des fuites partout, meme si elle ne provienne pas du
Brain Trust... Mais je me demande bien qui était l'autre personne au courant de
ce truc ???


        Bref, cette émission avait deux buts principaux :

        1er But: Causer déplombage et piratage avec Duthil et se demmerder pour
s'en tirer gagnant... (Dur!!!)

        2me But: Qu'on voit nos tronches à la télé... Eh ! On n'est pas mégalo
pour rien, bande de trous...


        Bon, tout ça pour vous dire que pour ce qui est du second but, si y'en
qui veulent me voir à la télé, il n'ont qu'à regarder un téléfilm qui va passer
sur Antenne 2 vers le mois de Janvier 90 et qui s'appelle "Fleur Bleu" et je
croit que le nom de l'épisode que c'est "Certain l'aime slow."  Remarquez vous
pouvez bien vous grater pour que je vous dise que c'est moi qui a un
this-cheurte noir dans un premier temps et une cheu-mhize verte à petit pois
dans les scènes du self-service et que je suis le plu bo... Ouais, je sais, le
scénar est pas géant mais on fait ce qu'on peut pour se faire voir...


        Eh, c'est pas que je m'emmerde mais si on passait o dé plom b'age...


        On va commencer par les compliments pour la boite:


     - Bravo les mecs votre plombage est dément...
     - Et puis le jeu a l'air pas trop mal non plus...
     - C'est tout parce que ça me fait mal au coeur de faire de la lèche...



        Pourquoi le plombage est-il dément??? Parce que quand on a acheté le
soft et que je l'ai testé chez moi, j'ai appelé LCKD pour lui annoncer la
mauvaise nouvelle : le soft n'etait pas plombé...


        Mais en réfléchissant je me suis demandé pourquoi un si bo soft n'était
pas protégé... Et puis je me suis interpelé intérieurement pour me rappeler que
dans les jeux d'aventure, la protection est bien dissimulée... Eh ben
finalemant, il l'était... J'étais donc maudi par tous les dieux de la
couscoussiere, et cela jusqu'à ma quatrième génération...


        En tout cas, la protec' est super bien dissimulée... elle consiste en
fait à empecher la sauvegarde d'un personage sur une copie non déplombée... Et
quand on n'est pas un grand joueur comme moi, c'est pas le genre de truc qu'on
remarque...

        Quelle est donc la chose qui m'a mis sur la voie de la protection?
Tout simplement une erreur grossière qui m'a tout de suite sauter à la gorge
tel un beauf tondant son jardin pendant que sa femme mange sa banane...

        Le boot de l'original dure 25 secondes alors que celui d'une copie en
dure 27... Bizarre me suis-je alors dis tel l'aviateur qui, consultant son plan
de vol, se rend compte qu'il a oublié de sortir son chien alors que la lune
etait pleine le 24 Dec 1235... Merde...

        En fait, je ne me suis pas amusé à compter combien de temps durait le
boot mais il y a un moment où le drive tourne dans le vide pendant 2 secondes
qui sont hélas suffisantes pour me faire remarquer que c'est pas normal meme
que...

        Si le drive tourne dans le vide c'est parce qu'il cherche une suite de
nibbles qui ne sont plus sur une copie... Et comme les types qui ont fait cette
protec' ont admis que le drive pouvait faire quelques erreurs, ils continuent
en cas d'échec à rechercher cette suite une bonne vingtaine de fois... d'où 20
essais pour une copie contre au maximum 3 essais sur un original...
Fatal Error.

        Le déplombage va donc se faire en trois temps :

        1er acte   : On recherche la protection en mémoire.
        2me round  : On trouve ce qu'il faut modifier en mémoire.
        3me partie : On modifie sur le disque.


        On va commencer, comme d'habitude, par Boot-Tracer tout ça...


]CALL-151
*1600<C600.C700M
*16F8:4C 59 FF
*1600G


        Et lorsque l'on regarde en $801, on remarque en $831, un JMP $C61... on
va donc le shunter pour voir ce qui s'y passe...

*16F8:A9 0 8D 31 8 4C 1 8
*1600G


        Bon, on regarde en $C61 et on remarque en $C8E un JSR $9C00, et quand
on regarde en $9C00, on aperçoit telle Mme Guettotrou, sage femme à la clinique
de Sainte Valmonde, qu'en $9CC4 il y a cette routine :


$9CC4-  LDY #$00        Cette routine décode de $9E00 à 9EFF en employant
$9CC6-  TYA             la méthode suivante :
        EOR $9E00,Y
        STA $9E00,Y     Octet 9E00 : EOR #$00
        INY             Octet 9E01 : EOR #$01
        BNE $9CC6       Et ainsi de suite...
        JSR $9E00       Là, on saute à la vérif'
        ROR $0FFF       Ceci permet de sauvegarder la retenue
        LDY #$00
$9CD8-  TYA             Et la on détruit la vérif', histoire
        STA $9E00,Y     de ne pas laisser de traces...
        INY             Clean, non ???
        BNE $9CD8
        RTS


        Bon, alors je ne voudrais pas dire que je suis soupe-sot-neux mais
quand je vois un décodage, un JSR, un truc qui gère la retenue et une
destruction, je me dis très vite que la vérif' n'est pas loin... Et en effet,
en $9E00, on apppppppperçoit ceci... (Apres l'avoir décodé bien zur !!!)

$9E00-  LDA #$05

        La suite immédiate n'étant pas très importante, j'abrège un peu...
        Je dois juste vous dire qu'on a 0 dans Y...

$9E21-  JSR $9EC1       Lecture d'un NIBBLE.
        INY
        BNE $9E2F
        INC $9ECF
        BNE $9E2F
        JMP $9EBF
$9E2F-  CMP #$D5        D5
        BNE $9E21
        JSR $9EC1
        CMP #$AA        AA
        BNE $9E2F
        JSR $9EC1
        CMP #$BB        BB --->  Ah bon ???
        BNE $9E2F
 

$9EBF-  SEC
        RTS
$9EC1-  LDA $C08C,X
        BPL $9EC1
        RTS


        Donc, en gros s'il ne trouve pas la suite D5 AA BB, il rend la main
avec la retenue à 1... sinon, il fait toute une suite de trucs inutiles en ce
qui concerne le déplombage et rend la main avec la retenue à 0... Il y a donc
deux solutions pour déplomber ce soft :

        Une, classe mais pas clean...
        Une autre, bestiale mais clean à l'éxécution...

        En fait, soit on remplace le SEC de la vérif par un CLC, soit 1 octet
de modifié; mais dans ce cas la vérif' s'éxécute et il y a donc une perte de
temps au boot... Beurk !!! On peut donc aussi remplacer le JSR $9E00 par un CLC
NOP NOP... Trois octets, mais un boot plus rapide que l'original... Clean!!!


        Pour la première solution, il faut se creuser un peu la tete :

        On se rappelle du codage??? Ok, alors le SEC étant en $9EBF, on a un
EOR #$BF... Alors on va repérer la chaine de cinq octets qui l'entoure :

$9EBA-  F0 03           BEQ $9EBF
        4C 1C 9E        JMP $9E1C
        38              SEC
        60              RTS

        On va donc coder la chaine de cette façon :

$9EBA- F0 03 4C 1C 9E 38 60

EOR:   BA BB BC BD BE BF C0

=      4A B8 F0 A1 20 87 A0

        Alors on la chercher et on la trouve en piste $1E secteur $1 et on est
content et on va pouvoir la modifier en mettant un CLC à la place du SEC et on
fait comme ça : on prend la valeur 18 (CLC) et on fait un eor #$BF dessus ce
qui donne A7 et on le met à la place du 87

C'est-à-dire   P$1E,S$01,O$BF : A7


        Et crack, ça marche... Et puis si vous etes impatient de jouer, vous
rechercher le 20 00 9E et que vous en trouvez un en piste 1E secteur 3 et que
vous le remplacer par un 18 EA EA :

C'est-à-dire   P$1E,S$03,O$D0 : 18 EA EA


        Ah que voila que c'est fait et que je suis content... et que je laisse
la place au TJS pour son mégafix qu'il est bo...


Allez, lance toi coco !!!



                                                A bientot...   


                                                                  Olt.

==============================================================================
^
!----------- Eh! pourquoi t'as fait cette ligne de =, Olt., c'est de la
             ségrégation raciale entre le crack et le fix, non mais!!!


        Et enfin le giga-fix de Might and Magic book two par The Master Fixer
(cf. Starfix 6), càd moi-meme The Jokersoft! Mais il faut quand meme que je
vous rappelle quelque chose avant de lire ces octets magiques, ah que, un fix
de ce type ne sert ABSOLUMENT A RIEN car il retire tout interet à l'aventure.
Utilisez donc lees octets à bon essien, ah que, vous verrez que ce sera aussi
beaucoup plus cool. Autre chose avant de partir dans le détail détaillé du fix,
ce genre de fix est réalisable par n'importe quel individu qui agit avec
méthode et temps...


        Rem : un signe / correspondant à un octet sans effet sur le fix.


$00    : Numéro du personnage dans le classement
$01    : Condition
         (01 = existing / 00 = deleted)
$02-0B : Nom du personnage sur 10 lettres
$0C    : Sexe
         (00 = male / 01 = female)
$0D    : /
$0E    : Catégorie
         (Human - Elf - Dwarf - Gnome - Half-Orc)
$0F    : Métier
         (Knight - Paladin - Archer - Cleric - Sorcerer - Robber - Ninja -
          Barbarian)
$10-1D : /
$1E    : Thievery (max 100%)
$1F    : /
$20-21 : Hp Max (Hit Points Max)
$22    : Mgt (Might)
$23    : Spd (Speed)
$24    : Acy (Accurancy)
$25    : /
$26    : Level
$27    : SL (Speel Level)
$28-29 : Sp Act (Speel Points)
$2A    : End (Endurance)
$2B    : Int (Intellect)
$2C    : Per (Personality)
$2D    : Luc (Luck)
$2E    : /
$2F    : Age
$30    : /
$31-34 : Exp (Experience)
$35    : /
$36-37 : Sp Max (Speel Points)
$38-39 : Gems (max 100)
$3A-3B : Hp Act (Hit Points)
$3C    : Situation
         (Good - Neutral - Evil - None)
$3D    : /
$3E-40 : Gold (max 1000)
$41    : AC (Armor Class)
$42    : Food (max 40)
$43    : Cond (Current condition)
$44    : /
$45-4A : Equipped
         (Small Club - Small Knife - Large Club - Dagger - Large Knife - Hand
          Axe - Speel Book)
$4B-50 : Backpack
         (Small Club - Small Knife - Large Club - Dagger - Large Knife - Hand
          Axe - Speel Book)

        Après, je ne sais pas, je n'ai pas cherché, je pense que cela suffit!
Cela fait 96 spells, 48 clericals, 48 sorcerers et 9 levels.



_MIGHT_AND_MAGIC_2________________________________OLIVER_TWIST_+_THE_JOKERSOFT_


Retour sommaire

hr Crackware

Neuromancer (1).


+-----------------------------------------------------------------------------+
!                                                                             !
! NEUROMANCER (C) INTERPLAY             CODE : SEEK & DESTROY !  by Loockheed !
!                                                                             !
+-----------------------------------------------------------------------------+

                             ______________
                            !              !
                            ! PRELIMINAIRE !
                            !______________!


Ce soft utilise la bank auxiliaire (déjà au mot "bank" ca va pas fort mais bank
auxiliaire ça c'est plus fort que le roquefort ! (Allo?)). Pas de panique.
Qu'est ce qu'une bank? Bon vous savez tous que le processeur 6502 (qu'on
retrouve meme sur des flippers) ne peut adresser que 64ko. On vous a dit quand
vous avez achete votre 2e que vous aviez 64ko de RAM (Random Access Memory),
mémoire vive en patois basque.

Réfléchissons... (Pas trop quand meme! ho l'autre, prise de tete!)

Mémoire $0000 à $BFFF c'est que de la bonne vieille RAM
        $C000 à $C100 c'est l'emplacement des entrées/sorties
        $C100 à $FFFF c'est que de la ROM (Read Only Memory), mémoire morte    
                      en patois auvergnat.

Mais alors $0000 à $BFFF ca fait que 48k de RAM çà! Crevindiou, on ne se serait
pas fait avoir quelque part ? Non qu'on se rassure dans les chaumières, il
existe la BANK...

En fait il y en a deux (banks, bande de petit vicelard). La bank 1 et la bank
2. Elles sont situées dans la portion de mémoire $D000-$FFFF où se trouve la
ROM BASIC et la ROM MONITOR. Mais comment avoir de la RAM où se trouve par
définition de la ROM? On va commuter des banks (= espace mémoire de RAM).
Comment? par des commutateurs logiques (comme ceux que vous utilisez pour
commuter la page HIRES, TEXT, etc...).

Problème : il y a deux banks.

L'une occupe tout l'espace $D000-$FFFF.            (BANK 1)
L'autre occupe tout l'espace $D000-$DFFF.          (BANK 2)

Problème : que devient la portion de mémoire $E000-FFFF quand j'ai commuté la
BANK 2?

L'espace $E000-$FFFF restera en BANK 1 donc pour bien comprendre voici un
schéma des trois cas possibles :


                 1er cas             2ème cas             3ème cas       

                 ________            _________            ________
                !        !          !         !          !        !
        $D000   !  ROM   !   $D000  !         !   $D000  !  BANK  !
                ! BASIC  !          !    B    !          !    2   !
                !        !          !    A    !          !________!
        $E000   !   +    !          !    N    !   $E000  !        !
                !        !          !    K    !          ! B      !
                !  ROM   !          !         !          !  A     !
        $F000   !MONITOR !          !    1    !          !   N    !
                !        !          !         !          !    K 1 !
                !________!          !_________!          !________!
        $FFFF                $FFFF                $FFFF

Comment obtenir l'un des trois cas?

1er cas : le plus simple. Quand vous ètes tapé un prog zicba c'est cette ROM
qui est en action car c'est elle qui gère le basic! Mème chose quand vous tapez
une routine en langage machine (Là ce sont les routines MONITOR qui s'occupent
de vous! ). Pour revenir en ROM le commutateur est $C081 (ou $C082..)

2eme cas : Commutation de la BANK No 1 : Actionnez deux fois le commutateur
$C083.

3ème cas : Commutation de la BANK No 2 : Actionnez deux fois le commutateur
$C08B.

En résumé :      BIT $C081  ; remet la ROM en route apres utilisation des banks

                 BIT $C083
                 BIT $C083  ; Met la BANK 1 en piste!

                 BIT $C08B
                 BIT $C08B  ; Met la BANK 2 en piste! (+ bank 1 de $E000-$FFFF)

Problème : comment zieutez ce qui se passe dans une BANK en accès direct?

Tapez :

]CALL -151

*C081 C081 F800<F800.FFFFM C083 C083     ; pour zieuter dans la BANK 1
*C081 C081 F800<F800.FFFFM C08B C08B     ; pour zieuter dans la BANK 2

Pratiquement tout le monde connait cette petite recette pour pouvoir jeter un
p'tit coup d'oeil indiscret dans les banks. Je vais essayer de vous la faire
comprendre...

Le fait de commuter deux fois le softswitch (mot barbare d'Outre-Manche pour
les commutateurs logiques) $C081, fera lire l'ordinateur dans la ROM mais oh!
magie le fera écrire dans la BANK 1.

F800<F800.FFFFM, c'est le bon vieux move. On va dire : "c'est stupide de MOVER
$F800 EN $F800". Pas si stupide que ça en fait. En effet rappelez vous : on lit
en ROM et on écrit en BANK 1. L'utilité de ce truc c'est de recopier l'espace
$F800-$FFFF dans la RAM de la bank 1.

C083 C083 : Commute la bank 1

Question : Pourquoi a-t'on recopier (partiellement) la ROM dans la bank 1?

De $F800 à $FFFF se trouvent toutes les routines qui vous permettent de
désassembler, d'entrer des caractères a l'écran etc.... Si vous aviez
directement commuter la bank, l'ordinateur se serait "planter".

Question : Qu'est ce que ca fait si je commute la BANK 2 puisqu'apparemment la
ROM n'a été recopiée que dans la BANK 1?

Réfléchissez : L'espace $E000-$FFFF est préservé quand vous passez en BANK 2
donc $F800-$FFFF n'est pas touché! On peut donc passer d'une bank à l'autre
sans s'emmerder profondément!

INCONVENIENT : Le fait de recopier la ROM détruit l'espace $F800-$FFFF alors si
le plombeur avait planqué sa VERIF, ici on l'aurait dans le .... (NB : Test
Drive y contient une partie de son boot!) pour regarder ce qu'il y a à cet
endroit on va faire un petit move que je vous enjoins d'étudier.

BUT : MOVER LA RAM $F800-$FFFF POUR POUVOIR LA MATER A DISCRETION.

 300 : 2C 83 C0    BIT $C083
 303 : 2C 83 C0    BIT $C083       ; actionne la BANK 1
 306 : A0 00       LDY #$00
 308 : B9 00 F8    LDA $F800,Y
 30B : 99 00 48    STA $4800,Y     ; on va mover 0 partir de $4800.
 30E : C8          INY
 30F : D0 F7       BNE $308
 311 : EE 09 03    INC $309
 314 : EE 0C 03    INC $30D
 317 : AD 09 03    LDA $309
 31A : D0 EA       BNE $308
 31C : 2C 81 C0    BIT $C081       ; Remet la ROM en route..
 31F : 60          RTS             ; fin des emmerdes...

*300G

On pourra donc tranquillement désassembler à partir de $4800 (en ayant à
l'esprit que la routine était initialement en $F800!)

Il existe d'autres commutateurs que $C081 $C083 $C08B pour manipuler les banks
mais ce sont les plus importants...

Maintenant la BANK AUXILIAIRE (AGAGAGA!!)

Bon! Sans rire, c'est super simple si vous avez tout compris avant (avec ma
pédagogie digne de mon prof de français ... Hum!!! )

En fait c'est la meme chose sauf qu'il y a un commutateur en plus a switcher.

 $C008 : met en piste la page zéro + la pile + les banks de la mem principale.
 $C009 : "   "    "    "   "   "      "  "      "   "     "  " "   auxiliaire.

Une fois que vous avez choisi l'un des commutateurs vous pouvez faire ce que
vous voulez de ce qui a été dit plus haut. Ha j'oubliais ces deux commutateurs
se switchent par une action de STOCKAGE ( STA, STY, STX ... ET C009:00 en mode
direct)

QUESTION : Comment zieutez ce qui se passe en bank auxiliaire en accès direct?
           (car quand je fais un C009 : 00  en mode direct ça plante!)

REPONSE  : D'abord pourquoi ça plante? Vous avez commuter la bank auxiliaire   
           mais aussi la page 0 et la pile. Or la pile et la page zero servent
beaucoup au programme de la ROM si vous changez brusquement de pile tous les
RTS qui sont fait en ROM ne retrouveront plus les valeurs qui avaient été
stocké auparavant dans la mémoire principale! Je vais donc employer une ruse
folle :

Tapez  300: 8D 09 C0       ; Bank auxiliaire
       303: 4C 59 FF       ; BREAK MONITOR.            (Tm) LOOCKHEED 1988

*300G

Cà y est vous pouvez maintenant zieutez dans les banks auxiliaires en exécutant

* C081 C081 F800<F800.FFFFM C083 C083   ; Pour la bank auxiliaire No 1
* C081 C081 F800<F800.FFFFM C08B C08B   ; Pour la bank auxiliaire No 2

Mon crack de THE LAST NINJA n'aurait pas pu etre fait si je n'avais pas connu
parfaitement les rouages de ces banks aux/main!

Si vous avez compris quelque chose vous avez de la chance...

                           _________________
                          !                 !
                          ! LE VIF DU SUJET !
                          !_________________!

+---------------------------------+
!I. Pourquoi une protection CODE ?!
+---------------------------------+

Quand la protection est sur disk, elle se trouve toujours au BOOT. (Avantage
pour les déplombeurs qui savent un peu tracer à partir de $C600) donc elle ne
présente pas beaucoup de difficulté pour ce qui est de la découvrir.

La protection par code, elle, est plus vicelarde car elle est intégrée au
programme et on ne sait pas trop ou partir pour tracer (à moins qu'il y ait des
fous pour décortiquer tout le soft!). De plus, elle n'a pas de "gueule"
caractéristique (on peut demander des codes de 400 façons en assembleur), la
protection disk a une carte de visite : le LDA $C08C,X.


+------------------------+
! CODE : SEEK & DESTROY! !
+------------------------+

         Première chose à savoir : le moment ou le jeu demande les codes.

Pour NEUROMANCER, les codes sont demandés quand on veut acceder au PAX (un truc
indispensable au jeu!). Cette fonction est accessible par le tableau de bord
par une action joystick ou par un ctrl-P (si je me rappelle bien...).

        Ensuite : Trouver une action précise ou l'on pourra commencer à tracer.

Là on se dit facile : cherchons l'endroit ou se fait le CTRL-P, c'est-à-dire un
CMP code ASCII de P en assembleur (C9 "P"). On prend un scanner d'octets, et
pan dans le flan, la j'ai rien trouver d'interessant...( ca rime en +).
La seule et unique façon de demander une touche en assembleur est d'utiliser le
softswitch $C000. Je vais chercher tous les $C000 qu'il y a sur le disk. Après
quelque recherche je découvre une routine qui m'a l'air d'etre le noyau des
différentes demandes de touche + joystick.
Cette routine a deux entrées (qui à mon avis servent à différencier une bète
attente de touche et une demande de caractère avec écho a l'écran... Cet avis
n'engage que moi car je n'ai pas décortiqué la routine, feignant que je suis!).

La premiére entrée est en $E802. Chance, c'est celle la qui m'intéresse. J'ai
trouvé gràce à ça que $DD48 était la routine qui gère les touches du tableau de
bord.

COMMENT ? Simple...

J'ai scanné des JSR $E802 j'en ai trouvé pas mal et aprés chaque JSR $E802, je
mettais un BIT $C0E9 pour allumer le drive, histoire de voir si le soft allait
bien à cet endroit là... (Remplacez en piste $1A, secteur $08, octet $48, le 20
02 E8 par un 2C 09 C0 et vous verrez qu'au tableau de bord, le drive s'allumera
et que vous ne pourrez plus appeler de fonction...!) 

Donc Cool, j'ai un point de départ pour tracer... Suivez moi dans le royaume
des opcodes...

DD48:    JSR $E802          ; Saut à la routine dont je parlais ci-dessuus.

de $DD4B à $DD76, rien d'interessant!

DD71:    BNE $DD7B  _       ;   Si y'a pas eu de touche frappée, va en $DD7B
DD73:    JSR $DEB0   !
DD76:    INC $3B     !
DD78:    JMP $DDC7   ! -----> JMP INTERESSANT!
DD7B:     .....    <-+

Voilà un JMP intéressant! J'ai trouvé (Instinct de déplombeur?, Coup de Moule?,
choisissez !) que si avant cette routine, on mettait une valeur de X de 0 à 5,
le tableau de bord faisait l'une des 5 fonctions!). Pour bien comprendre,
modifiez sur UNE COPIE (!!!!) le BNE en DD71 (qui est en piste $1A, secteur
$08, octet $71), mettez un D0 00 et a la place de INC $3B, mettez un LDX 0 à 5,
(A2 <00 à 5>) ainsi vous verrez que la fonction dont le chiffre est dans X-reg
se mettre directement en action!

Je sais maintenant : - où le soft va pour demander une touche,
                     - comment avoir une fonction qui m'intéresse.

Je sais que X-reg=3 quand le PAX est demandé!

      JMP $DDC7; allons y !

$DDC5:       LDX #$FF      ; Le programmeur met une valeur de X-reg qui ne soit
                           ; pas entre 0 et 5, je vous mets juste ca avant
                           ; $DDC7 car le programme continue de toute façon en
                           ; $DDC7 meme si une touche n'a pas été frappée.
$DDC7        TXA           ; en fait c'est ce transfert de X dans A qui m'a mis
                           ; la pute sur l'oreiller (Allo?), la puce à
                           ; l'oreille

Après il y a une série de comparaison qui vont m'amener à la conclusion
suivante :

Cette routine se termine de deux façons :

DE0C:    CLC                         DE0E:      SEC  ; si rien ne s'est passé
DE0D:    RTS                         DE0F:      RTS 
     !
 ____!
!_
!_> Si une touche correspondant
    a une fonction a été frappée


En regardant un peu avant DE0C ( quand une touche a été frappée ), on remarque 
que la suite d'instruction LDY #$06
                           JSR $E723
                           JSR $DE11 est répétée 3 fois.

3 fois, 3 fois ???!!! Mais oui, comme les clignotements inverse du tableau de
bord (qui sont au nombre de trois!)

Donc je suis sur d'etre sur la bonne voie...!




A SUIVRE! FICHIER : NEUROMANCER (2)                                   LOOCKHEED


Retour sommaire

hr Crackware

Neuromancer (2).




mais...
merde..
daube..
shit..

Elle se termine par un RTS comment savoir où elle va en suite?
   ^^^^^^^
Astuuuuuuuce!          _____________________
                      !                     !
parenthèse :          !   QUE FAIT UN RTS ? !
                      !_____________________!

Il prend les deux valeurs en haut de la pile qui avait été sauvé auparavant par
le JSR et il saute à l'adresse + 1 indiquée par ces deux valeurs. comprendo?

Pour savoir où va ce RTS, il me suffit de détourner la routine sur un programme
à moi qui récuperera les deux valeurs en haut de la pile et le tour ist
gespielt....

Valeur en haut de la pile : Adresse basse -1
Valeur qui suit           : Adresse haute

 ( PLA     )
 ( STA  $06)    Ca donnera une routine de ce genre la pour récupérer l'adresse
 ( INC  $06)
 ( PLA     )    en $06 et $07!
 ( STA  $07)
                                                       (TM) LOOCKHEED 1989


Refermons la parenthèse.... Ca y est, c'est fermé... Go forward...

Cette astuce folle me permet de continuer mon traçage a partir de $F5D0

 F5D0 :      JSR $DD48      ; Routine de toute à l'heure !
 F5D3 :      BCC $F5D8      : (excusez l'adressage relatif..!)
 F5D5 :      JMP $F58A      ; Celui là, on s'en balance..
 F5D8 :      RTS

Le BCC en $F5D8 est super décisif... En effet, rappellez vous comment se
terminait la routine en $DD48 si une touche avait été frappée :

         CLC       ->>>>     ANNULE LA RETENUE !!!  RETENUE = 0!
         RTS

Le BCC est une instruction de branchement qui va à l'adresse indiquée si la
retenue est égale à 0.


En résumé, si une touche a été frappée, exécute le RTS en $F5D8, facile non?
Sans oublier que l'on a dans l'accumulateur le no de l'action à exécuter!
Le RTS ne nous arrétant plus, tel le preux chevalier du moyen-age sauvant sa
princesse du méchant BaronNnoir survolant Paris par une nuit de pleine
lune..!????, CONTINUONS!!>>>.....

En cherchant où va le RTS en $F5D8, on se rend compte qu'on atterit sur une
routine très intéressante (Qui est je pense la boucle principale du programme)
dont voici les grandes lignes :


 F542: JSR $F58A    ; la valeur de l'accumulateur est importante
 F545: STA $F565    ; on la sauve + loin
 F548: TAY
 F549: ASL          : *2
 F54A: TAX          ; transfert dans un registre index
 F54B: LDA $F57A,X  ; pour pouvoir donner
 F54E: STA $F55F    ; une adresse précise
 F551: LDA $F57B,X  ; au JSR EN $F55E !
 F554: STA $F560    ; Conclusion : selon l'accumulateur fait une action
 F557: CPY #$05     ; précise...
 F559: BEQ $F55E
 F55B: JSR $DED3
 F55E: JSR $FFFF
 ...etc...
 F577: JMP $F542 (Début de la routine!)

Le JSR EN $F55E est donc super décisif (je pense que la routine ci-dessus
montre que ce jeu est en fait un C, ou un basic barbare compilé ou tout
simplement du PASCAL mais supposition... ) quand on demande le PAX, on trouve :

 F55E : JSR $F6B0

 So, on va en $F6B0 où on tombe sur un JSR $7400 qui m'a l'air d'etre
 le commencement de l'affichage.. (Question , affichage GIGA de PAX, etc..)


Là va commencer la tactique

"  MERDONS-LE-JEU-A-DES-ENDROITS-POUR-SAVOIR-QUAND-IL-DEMANDE-LES-CODES!  "

En pratique on fout des merdes (par exemple des BRK (HEX 00)) pour savoir
exactement où se situe la routine qui demande les codes. Cette tactique m'a
fait trouver que le JSR $74F8 (situé en $744C ) était à remplacer, soit par 3
NOP, soit par un BIT $74F8 (BREF POUR PAS QU'IL S'EXECUTE!)

      CRACKED..... (ET CE FUT CHIANT..... !)

 DES HEURES DE RECHERCHE POUR MODIFIER UN 4C EN 2C on est peu de chose...


                                                              LOOCKHEED.


Retour sommaire

hr Crackware

Neuromancer (3).


°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
°                The Almost Complete Fix for Neuromancer                    °
°                    By the master of the Fractals                          °
°                                                                           °
°                     ******  PERFECT BUGS ******                           °
°                    ***          FROM         ***                          °
°                  ****  THE $FF59  CONNECTION  ****                        °
°                 *****                         *****                       °
°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°


Hello everybody. Neuromancer est un jeu assez génial mais un peu dur, il faut
bien le reconnaitre. Avant de voir le monde des données en 3D ( 'La Matrice' ),
bien des joueurs auront laissé tomber. Pour vous aider un peu, voici le Fix
presque complet de ce giga-jeu.

Primo, il faut savoir que vous avez le fric que vous trimballez sur vous, plus
celui déposé à la banque. D'autre part, quand vous réussissez à avoir un
logiciel que vous mettez dans votre terminal (au début du jeu un terminal assez
minable qui crame à la première occasion), celui-ci est affecté d'un numéro de
série. Plus ce numéro est élevé, plus puissant est le soft (c'est comme
Locksmith !!!). Enfin, pas de skills comme dans les autres jeux de role, mais
des skillchips que vous achetez et que vous vous implantez dans le crane.
Chaque skillchip est affecté d'un niveau.

Une autre petite chose à savoir : j'ai constaté que la place du secteur de
sauvegarde évoluait dans le jeu (dans les pistes 5 et 6 généralement). Comme il
y a de plus 4 jeux sauvés, ce serait un peu trop bordelique de tout donner.
Donc, je ne vous donne que les données spécifiques au Jeu Sauvé N°1, et ce au
début du jeu (Bootez Neuromancer, faites New Game, puis sauvegarder sous le
numéro 1).

Les données concernant le matos, le fric et les skillchips implantés sont Piste
$5, Secteur $5 :
 - Octets D2 à D4 : Fric transporté (attention, codé en Hexa avec octet de plus
faible poids en premier. Exemple : 2000 crédits, 07D0 en Hexa est codé ainsi
D2: D0 07 00. Pigé ?)
 - Octets D5 à D7 : Fric déposé à la banque.
 - Octets A8 à B7 : Normalement, on a $FF, ce qui veyt dire que l'on a aucun
chip. Tout octet différent de $FF correspond à un chip donné de niveau Octet +
1 (C'est-à-dire que si l'on a un 01, le niveau est 02).

A8 : Bargaining          (43)           A9 : Coptalk         (44)
AA : Software Analysis   (45)           AB : Debug           (46)
AC : Hardware Repair     (47)           AD : ICE Breaking    (48)
AE : Evasion             (49)           AF : Cryptology      (4A)
B0 : Japanese            (4B)           B1 : Logic           (4C)
B2 : Psychoanalysis      (4D)           B3 : Phenomenology   (4E)
B4 : Philosophy          (4F)           B5 : Sophistry       (50)
B6 : Zen                 (51)           B7 : Musicianship    (52)

Les numéros indiqués entre parenthéses correspondent au code affecté à chaque
Chip quand il n'est pas encore implanté et que vous le transportez dans votre
matos (voir plus loin). Attention, aucun Chip ne doit avoir de niveau supérieur
à 4 excepté pour les Chip Logic, Psychoanalysis, Phenomenology, Philosophy et
Sophistry (utilisés contre les Artificial Intelligence) de niveau maximal 12.

Votre matos est codé à partir de l'octet $28. Quand vous ètes à vide, il n'y a
que des $FF espacés de 3 octets (octets dont je n'ai pas encore vu l'utilité).
Remplacez les $FF par les octets correspondant à votre matos :

Tout ces noms correspondent à des terminaux :

1D:Hiki Gaeru   1E:Gaijin         1F:Bushido         20:Edokko      21:Katana
22:Tofu         23:Shogun         24:188BJB          25:350SL       28:UXB
2A:ZXB          2B:Cyberspace II  2C:Cyberspace III  2D:Cyberspace VII 2F:Ninja
2000   30:Ninja 3000     31:Ninja 4000      32:Ninja 5000
33:Blue Light   34:Samurai Seven

Et maintenant le matos 'normal':

Codes $43 à $52 : Chips dont les codes sont indiqués au-dessus.

53:CyberEyes    56:Guest Pass     59:Joystick        5E:Caviar
5F:Pawn Ticket  60:Security Pass  61:Zion Ticket     62:Freeside ticket
64:Chiba Ticket 65:Gas mask       67:Sake

Ca, c'était votre matos. Les logiciels sont téléchargés dans les différentes
banques de données que vous arrivez à craquer. Ces logiciels sont répertoriés
de la mème manière que le matos en Piste $5 Secteur $4, la liste commençant à
l'octet $02. Remplacez les $FF par les codes des logiciels correspondants. Le
numéro de série du logiciel est indiqué juste après. Ainsi 0A 06 correspond au
logiciel ComLink 6.0 (Le 6.0 est le seul soft à permettre d'accéder au
Cyberspace hormis le logiciel Cyberspace et le Vaccine). Comme j'ai fini le
jeu, je vous indique la fonction de chaque logiciel, tout au moins ceux que
j'ai pu expérimenter.

00:Mimic            Programme qui vous permet de contourner certaines ICE
01:Jammies          Programme qui bloque pour un temps l'ICE
02:ThunderHead      Virus qui bousille l'ICE
03:Vaccine          Programme de communication
04:Blammo           Programme piège qui ne sert à rien
05:DoorStop         ICE breaking Software
06:Decoder          '  '  '  '  '  '  '
07:Sequencer        Soft dont j'ai pas encore vu l'utilité
08:ArmorAll         Programme qui reconstitue votre bouclier. Attention
cependant à ne pas l'utiliser s'il est d'un numéro de série trop élevé, car le
temps que votre bouclier se reconstitue vous ètes touché.
09:KGB              Vous amène directement à la base de données du KGB (Gaffe,
il y a une AI dedans).
0A:ComLink          Programme de communication
0B:BlowTorch        ICE breaking Software
0C:Probe            Renvoie des informations sur la solidité de l'ICE et la
présence éventuelle d'un AI
0D:Drill            ICE breaking Software
0E:Hammer           '  '  '  '  '  '  '
0F:Python           Virus très puissant
10:Acid             Virus
11:Injector         Virus
12:DepthCharge      ICE breaking Software
13:Concrete         ICE breaking Software
14:EasyRider        La Matrice est divisée en 8 zones accessibles uniquement
par un jack donné. Avec ce soft, vous pouvez vous balladez dans n'importe
quelle zone à partir de n'importe quelle prise.
15:LogicBomb        ICE breaking Software
16:CyberSpace       Programme de communication
17:Slow             Programme qui ralentit les réactions de l'ICE
18:BattleChess      Le premier un vrai jeu d'échec (enfin, 'vrai'...)
19:BattleChess      Soft qui permet de passer une AI particulière sans
combattre
1A:Scout            Programme d'information. Jamais pu l'utiliser.
1B:Hemlock        !  Ces deux softs sont réservés à deux AI. Le premier est
1C:Kuang Eleven   !  réservé à Greystoke, le second à Neuromancer.

Pour les ignares, AI est l'abrévation de Artificial Intelligence. Quand à
l'ICE, c'est l'ensemble des systèmes de protection d'une base de données.
Je vous laisse vous dépatouiller avec tout ça. Ce qu'il faut savoir, c'est que
vous ne pourrez comprendre l'histoire sans jouer normalement (avec du fric et
des Chips boostés quand mème). Je précise que ce soft est tiré d'un livre de
William Gibson, Neuromancer (Neuromancien en français), bouquin absolument
génial. Un truc marrant au passage : Dans la traduction, ICE est devenu GLACE
(logique me direz vous...), abréviation de 'Générateur de logiciels
anti-intrusion par contre-mesures electroniques' !!! Dommage que je n'ai pas
l'abréviation de ICE.



°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°° That's all Folks !!! °°°°°°°°°°°°


Retour sommaire

hr Crackware

Platoon.


 _____________________________________________________________________________
!                                                                             !
! PLATOON (C) 1987 Data East/Ocean        Cracked by THE JOKERSOFT -  5/12/88 !
!_____________________________________________File : THE JOKERSOFT_-_21/ 1/89_!



   PLATOON est un jeu d'arcade en DHGR rapide et beau, ce qui est très étonnant
de la part de Data East surtout lorsque l'on a vu Commando, Ikari Warriors qui
sont de la meme boite d'édition.

   La protection n'est par ailleurs pas la meme que dans les deux jeux cités
précedemment, mais sa difficulté n'est toujours pas bien haute!

   La premiére étape consiste à vérifier avec quel copieur, Platoon est-il
copiable? La réponse, vous l'avez dit des centaines de fois dans votre vie :
c'est Locksmith 6.0.

   La deuxième étape consiste à constater si le soft était plombé, lorsque l'on
voit un original copiable au Locksmith, on est pret à tout voir... Et, en effet
le soft reboote à l'infini dans le drive. On peut déjà se dire que si le type
qui a fait la protection est très bete, il y aura un JMP $C600 (<=> PR#6) dans
son programme, il va s'avérer que cela est vrai!!!

   La troisième étape consiste à "boot-tracer" le soft :

]CALL-151
*1600<C600.C700M
*16F8:4C 59 FF
*1600G

   Remarque : lors du faux-reboot que l'on vient d'appliquer, le temps de
chargement du boot 1 a été plus long que la normale, tiens bizarre!

   On zieute un peu la valeur en $800 (qui correspond au nombre de secteurs
chargés lors du boot 1) et on lit 03 alors que dans 95% des cas, on lit 01.
Il a donc lu 3 secteurs qui sont mis en mémoire de $800 à $AFF.

   Si on lit le boot 1, on constate tout de suite en $801 un JMP $A00. On
saute naturellement en $A00, et là (oh! comble du miracle!) on tombe sur une
routine qui va etre la protection de Platoon : elle lit des nibbles qui sont
bien entendus changés si c'est une copie, puis les comparent avec les vraies
valeurs que contiennent l'original.

   Analysons un peu cette routine pour comprendre où le programmeur veut en
venir : on remarque rapidement qu'il fait 3 tests d'octets qui sont les memes

A08:Rt       LDA machin
             STA case

    Read1    LDY $C08C,X
             BPL Read1
             CPY Val
             BNE Rt
             BEQ Read2

    Read2    idem...

    Read3    idem... (sauf que le registre testé n'est plus Y mais A)

puis la sortie de cette routine, est-ce une affreuse copie ou l'original?

A46:         EOR #$FF
             BEQ Good dsk   ; Branch if EQual sur Good dsk

A4A:Bad dsk  JMP $C600      ; et oui, il est là!!! il est donc bete!!!

A4D:Good dsk LDA #$60       ; quelques initialisations vérifiées ensuite :
             STA $2B        ; (A) 60->$2B
             LDA #$09       ; (A) 09->$27
             STA $27        ; ----

    Init B0  LDA #$01       ; stockages de bonnes valeurs
             STA $800       ; dans le boot 1, pour appliquer
             LDA #$A5       ; un futur faux-reboot.
             STA $801       ; donc :
             LDA #$27       ; 800:01 A5 27 C9 09
             STA $802       ; c'est-à-dire :
             LDA #$C9       ; 800:01       => nb de sect. à charger 
             STA $803       ; 801:A5 27    LDA #$27
             LDA #$09       ; 803:C9 09    CMP $09   ; (tiens cf. Good dsk!)
             STA $804       ; ----

             JMP $801       ; faux-reboot

   Voilà, on a tout décortiqué!!!

   Maintenant on a trois façons de déplomber Platoon.

1/ soit en $A4A on place 3 NOP (EA EA EA) au lieu de 4C 00 C6 (l'erreur est
   ici commise, mais va déboucher sur la routine de stockage des valeurs),

2/ soit en $A48 on met un JMP $A4D (4C 4D 0A) pour que la copie soit détectée
   mais que le routine éxécute quand meme la suite du boot,

3/ soit (et c'est la solution que j'ai employé) on met en $800 les valeurs que
   met la routine de protection au boot 1 c'est-à-dire : 01 A5 27 C9 09

Donc, en résumé, si on applique ces modifs sur le disk.
1/ P$0/E.4A : EA EA EA    ou
2/ P$0/E.48 : 4C 4D 0A    ou
3/ P$0/0.00 : 01 A5 27 C9 09

   L'avantage de la troisième méthode est un gain de temps au chargement, d'une
part car il n'y a plus qu'un secteur à charger au boot 1 et que la lecture des
nibbles n'est pas faite.



   Et maintenant, un petit fix : comment avoir des munitions infinies :
P$5/E.89 : CE -> AD (case mémoire $FFBA) la valeur initiale étant $10.



_PLATOON_________________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Pool of Radiance.


/------------------------------------------------------------------------------
! Pool Of Radiance V1.1                   (C)1988 Strategic Simulations, Inc. !
! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - !
! Broken by William COMTE (Mai 1989).          Distribué par The Brain Trust. !
! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - !
! Documentation dans Dox a Gaz 6 & 7.                Gros bisous à Max a Gaz. !
! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - !
!      Fichier explicatif sur la déprotection de P.O.R. pour Crack-Ware.      !
------------------------------------------------------------------------------/



   Tout d'abord, le programme Pool Of Radiance utilise le RDOS de R. Gustafsson
avec un "interleaving" de type Pascal ou ProDOS, aussi je conseille le
DiskFixer V4.1 pour modifier le programme (appuyer sur 'O'ption et sélectionner
'U' ou 'P' pour le type de dos). Toutes réferences à un secteur particulier
seront basées sur ce type d'interfoliation des secteurs.



La protection :
-------------

   Il ne s'agit pas ici de protection disque (car l'on doit jouer avec les
backups des 8 faces de P.O.R.) mais de la 'Roue de la Fortune' (Translation
Wheel dans le texte). Elle apparait en deux points du programme :


  - après la présentation, un mot de passe est demandé. Deux essais possibles
    sinon au revoir! Le programme s'arrete.

  - pendant le jeu, des messages vous sont donnés en Espruar (runes elfiques)
    ou en Dethek (runes naines).


   Il faut noter aussi que les descriptions importantes pour le jeu, sont
données sous forme de chapitres à lire dans la documentations. Je tiens à faire
ici de la publicité pour Max a Gaz et son équipe de traducteurs qui ont déjà
traduit une partie de la doc dans Dox A Gaz 6 (la suite sera dans le 7).



Les mots de passe :
-----------------

   Avant de pouvoir jouer, le programme vous demande un mot de six lettres
déterminé par deux runes, une elfique et une naine; ces mots sont :


   - BEWARE   - COPPER   - DRAGON   - EFREET   - FRIEND   - JUNGLE
   - KNIGHT   - NOTNOW   - TEMPLE   - VULCAN   - WYVERN   - ZOMBIE


   Grace à un scanner d'octets, on retrouve la liste complète et non codé de
ces mots en piste $12 secteur $5 (disk A face 1); ce secteur appartient au
fichier INIT chargé à partir de $8A80 (P$11/S$A) et s'arrète en $987F
(P$12/S$7). La routine de test est appelée en P$11/S$A/O$FD :

8B7D- 20 1B 96   JSR $961B


   Elle commence juste après la table de mots trouvé précedemment P$12/S$5/O$9B

961B- A2 15      LDX #$15
961D- A9 10      LDA #$10
961F- 20 D3 82   JSR $82D3
9922- ...


   Les trois premières lignes ci-dessus chargent les paramètres nécéssaires à
la routine situé en $82D3 (programme LIBRARY face 7) qui va stocker à partir de
$800 le fichier CHARPIC10 qui contient les fontes des caractères runiques
(à titre d'exemple, essayez d'intervertir les noms CHARSET et CHARPIC10 dans
le catalogue de la face 1, P$01/S$5 et vous aurez une présentation bien laide
certes mais en runique.); ce détail nous servira plus tard vous verez. La
routine se poursuit avec la mise en place des paramètres et l'affichage des
messages... et à la fin on trouve le test qui se termine par ou bien une boucle
infinie :

9708- 4C 08 97   JMP $9708   (et le programme plante!)


ou par un RTS classique :

96F2- 60         RTS         (et le programme continue)


  Sans hésiter, on empèche le test : (P$11/S$5/O$FD)

8B7D- 20 1B 96   JSR $961B --> 4C 80 8B   JMP $8B80
8B80- ...


   Et voilà la première version de P.O.R. distribué par le Black Chest, mais
hélas en jouant je me suis aperçu que le programme donnait parfois des mots
importants pour le joueur, sous forme runique...



Les messages runiques :
---------------------

   Nous avons vu précedemment que le fichier CHARPIC10 contenait les runes, et
donc si ce fichier se trouve sur une face du jeu, c'est que cette face
contient des messages runiques. Ces faces sont : 1, 4, 5 et 7. Le programme
qui les controle est le module DUNGEON (Face 2).


 Deux solutions possibles :

  1- réecrire le fichier CHARPIC10 avec des caractères classiques.

  2- modifier le programme pour que les messages soient affichés normalement.



   J'ai personnellement choisi la première solution par flème de tracer tout
DUNGEON et d'éditer les modules ECL__ qui contiennent les fameux messages. Je
vous donne ici le principe pour modifier CHARPIC10 :


1 - écrire un programme pour afficher les $80 (128) caractéres de CHARPIC10
    en page graphique; un caractères étant constitués de 8 octets consécutifs
    que l'on affiche l'un en dessous de l'autre.

2 - éditer la page graphique et remplacer les runes par des caractères plus
    lisibles.

3 - écrire le programme inverse du 1 - puis sauver l'objet à la place de
    CHARPIC10 sur les faces corespondantes (4, 5 et 7).


! pour les courageux qui voudraient tenter la deuxième methode, voilà quelques
! indices :
!
!  L' appel de CHARPIC10 se fait par la séquence 21 00 FF 00 10 00 FF que l' on
! retrouve en :
!
! Face   Fichier   Piste   Secteur
! --------------------------------
!  4.    ECL15      $0A      $6
!  5.    ECL03      $0B      $5
!  5.    ECL04      $0C      $B
!  "       "        $0D      $0
!  7.    ECL17      $09      $A
!
!    Il faut alors éditer ces modules qui sont interprétés par le programme
! DUNGEON et modifier le code des mots affichés et la routine d' affichage;
! Bon courage! (si quelqu'un le fait j'aimerais y jeter un coup d'oeil!)


   Voilà, vous pouvez désormais jouer tranquillement à Pool Of Radiance (avec
les Dox A Gaz 6 & 7 bien sur!). J'en profite pour signaler que sur la face B
de Dox A Gaz 6, il y a un "autocrackeur" :

   Appuyez sur "U"pdate lors du boot puis suivez les instructions, le programme
se charge de remplacer les fichiers sur les faces adéquates pour 'updater'
n'importe quelle version de Pool Of Radiance.



_Pool_Of_Radiance_V1.1___________________________William_COMTE_pour_Crack-WARE_


Retour sommaire

hr Crackware

Rampage.


________________________________________________________________________________

                    Copperfield, CRACK-WARE 23/09/89


         RAMPAGE  (c) Activision 88         (K) THE BRAIN TRUST
________________________________________________________________________________



 A soft nul, plombage archinul...

 Pour la petite histoire, sachez que ce soft est à l'origine de la gueguerre
menée entre le Brain Trust et le gdf. C'est de ce soft que le Brain Trust parti
vers de nouveaux horizons et de nouvelles aventures.
 Ceci me donne l'occasion d'expliquer le waper-ware excercé par gdf :
lors de l'arrivée d'une nouveauté sur 2e/2c, gdf annonce à tous ces élèves, le
plus rapidement possible par courrier, téléphone, B.A.L. minitel, train, avion,
radio, TV, satellite, (...), bref il remue ciel et terre pour faire savoir qu'
il a des nouveautés que personne n'a. Ensuite après une grosse pub sur le soft
en question ("oui c'est le plus giga soft de la terre..."), il informe ces
élèves qu'il met ces superbes news à leur disposition en original, et qu'ils
sont libres de le distribuer, s'ils arrivent à le déplomber.
 Ainsi, sachant que les inconnus veulent toujours etre connus (mentalité Atari)
les dits élèves s'arrachent ces news qui n'étaient fournies qu'avec un cours
payant, les royalities allant bien sur au gdf... (comme tous ces cours...)
 Donc avec l'arrivée de news, gdf arrivait à vendre une tonne de cours et s'en
mettait plein les poches...

 Bon ceci étant dit, revenons-en à Rampage : le Brain Trust avait eu ce soft
grace à la plus belle infra-structure qu'un groupe de déplombeur n'ai jamais
eu sur Apple, j'ai nommé : le Black Chest.
 Ce soft étant donc en notre possession, gdf nous demanda si nous pouvions lui
donner l'éxclusivité de ce soft pendant 3 jours pour ces cours pour qu'il
puisse allécher ces élèves et se faire du fric... Et meme il ajouta :
"le temps que le courrier parvienne à mes élèves, vous l'aurez déjà distribué
dans toute la galaxie..."
 Donc les élèves étaient trompés car ils n'auraient jamais pu le distribuer en
exclusivité...
 The Jokersoft, indigné par cette fourberie envers des ames innocentes et pures
retorqua au gdf qu'il était hors de question que nous trompions ainsi les
élèves. Donc nous nous mimes (marceau) à distribuer ce soft (qui en plus est
une bonne grosse daube ( (c) Lune de Fiel avec David et Zaza) ). D'ou colère du
gdf, d'ou rupture des relations entre la future puissance de frappe
informatique Brain Trustienne, et gdf le vétéran.

--------------------------------------------------------------------------------

 Pour la seconde anecdote sur Rampage, sachez qu'au temps où le Brain Trust
devait illuminer l'émission "Ciel mon mari!" (ou mardi, j'sais plus...), du
Deux Chat d'Havanne, nous eumes filmés sur cassette vidéo le pain quotidien des
déplombeurs sur Apple (film fait surtout pour notre propre plaisir...). Et nous
déplombames sous les yeux de notre caméraman CSSR 67... Puis, ensuite nous
tournames un petit film érotique grace au concours de créatures subliminales
qui sont l'ombre du Brain Trust et que je tiens absolument à citer :
 Adrianna (la +...), Isabelle no1, Isabelle no2, Yannicke, Céline, Christine,
Vanessa, Martha (merci pour les entrées gratuites à la Révo.).
 Et bien sur, celle qui les fait tous rever : TANIA.

--------------------------------------------------------------------------------

 Une grande histoire pour un fichier déplombable en 1'23"5°, dont l'expliquance
du crack suit...


 Primo l'original se copie avec 1 LFB (Locksmith Fast Backup) sans un pépin
(Lebref).
 Aprés un boot de la copie, plantage sur l'image...

 Deux manières s'imposent alors pour le déplombeur Apple doté d'un quotient
intellectuel à trois chiffres (pas comme les Ataristes), deux propositions
pour traquer la protection : soit en cherchant d'aprés les commutateurs
graphiques (si le disk n'est pas codé), soit la seule et unique méhode valable
le boot tracing bien sur...

 Bon pour vous orienter le boulot, sachez que dans le boot 1 (page $8 : $800 à
$8FF, soit la piste 0, secteur 0), nous avons un JMP $8070. A savoir aussi que
tous les JSR $D000 sont des accès à la RWTS (précédés des paramètres).
 En traçant le programme, vous trouverez en $8152 : les commutations pour la
page graphique DHGR, et juste après en $81A0 pour etre précis le saut à la
vérif' que nous cherchons (pour ceux qui prennent le fichier en cours).
 Je vous donne le listing de cette vérif', on lit une suite de nibbles que l'on
ne trouve bien sur que sur l'original. L'aboutissement de cette vérif' est :
un saut en $828B si copie, et un RTS si original.
 Donc il suffirait de mettre un RTS au début de cette routine de vérif', pour
avoir une fin comme si on avait un original.

 Donc sur disque, cherchez les premiers octets de cette routine de vérification
soit par exemple : A9 56 85 FD A9 08
 => On trouve ceci en piste $0, secteur $D, à partir de l'octet $3E.

 Pour les intéressés et les curieux, les nibbles vérifiés sont à la fin du
champ de données de la piste $0 secteur $0.



         ORG $823E

         LDA $C089,X    ; DRV On
*-------------------------------
*  Compteurs d'essais
*-------------------------------
         LDA #$56
         STA $FD
H8245    LDA #$08
         DEC $FC
         BNE H824F
         DEC $FD
         BEQ H828B      ; nombre d'essais épuisés : plante.
*-------------------------------
H824F    LDY $C08C,X
         BPL H824F
         CPY #$FB
         BNE H8245
         BEQ A
A        NOP
         NOP
         LDY $C08C,X
         CPY #$08
         ROL
         BCS H826F
H8264    LDY $C08C,X
         BPL H8264
         CPY #$FF
         BNE H8245
         BEQ A
H826F    LDY $C08C,X
         BPL H826F
         STY $FC
         CMP #$0A
         BNE H8245
H827A    LDA $C08C,X
         BPL H827A
         SEC
         ROL
         AND $FC
         EOR #$FF
         BNE H828B      ; ne trouve pas la bonne valeur : plante !
         CMP $C088,X
         RTS
*-------------------------------
*  Routine de plantage
*-------------------------------
H828B    TAY
         CMP $C088,X    ; DRV Off
         PLA
         PLA
H8291    STA H0800,Y
         INY
         BNE H8291
         INC H8293
         LDA H8293
         CMP #$82
         BNE H8291
         BIT $C081
         BIT $C081
H82A7    JMP ($3F2)     ; en $3F2: $82A7 (planté)
*-------------------------------
H0800 = $0800
H8293 = $8293
*-------------------------------


Retour sommaire

hr Crackware

Roger Rabbit.


 _____________________________________________________________________________
!                                                                             !
! WHO FRAMED ROGER RABBIT? (C) 1988 Buena Vista   <K> OLIVER TWIST -   /12/89 !
!_____________________________________________File : THE JOKERSOFT - 15/ 7/89_!



   J'écris ce fichier en lendemain de Fete Nationale Française où je ne suis
pas allé, donc il n'y aura pas d'hérésies ou d'élucubrations éthyliques de ma
part comme me les pretent si souvent Max A Gaz avec sa célèbre citation :
"Pour pas choper la gueule de bois, restes bourré!"

   Let's go!

   Buena Vista est une boite totalement inconnue sur Apple, et donc à boite
nouvelle, protection nouvelle!!!

   Et puis le soft est en ProDOS, alors tous les adeptes du boot-tracing vont
découvrir l'art de déplomber un soft avec ce système d'exploitation, pour ma
part, je pense que cela est plus simple!

   Je me permet ici une petite parenthèse : les parametres sur les pistes,
secteurs et octets qui sont donnés à l'aide de Diskfixer sont des valeurs
sous DOS 3.3 et non pas en ProDOS (sorry!), c'est plus simple à manier. De
plus, vous le saviez que l'ordre de lecture des secteurs en ProDOS est
différente de celui en DOS 3.3!

   L'original de R.R est copiable au Locksmith (Fast Disk Backup), mais plante
quelques secondes après son chargement en vous envoyant dans les méandres du
ProDOS (ENTER PREFIX). Il faut donc retrouver la vérif. qui nous envoie dans
cette sub-routine du ProDOS.

   Le proDOS de R.R étant "miné", prenez en un sur une autre diskette, et tapez
CAT

/DISK1SIDEA

 NAME           TYPE  BLOCKS  MODIFIED

 PRODOS          SYS      32  14-APR-88       ; SED du disk
 DHRSFONT        BIN       5  16-NOV-88       ; fontes DHGR du jeu
 TITLE           BIN      33  23-NOV-88-------
 BV              BIN      33  23-NOV-88       ! 6 images DHGR couleurs
 CREDITS         BIN      33  <NO DATE>       ! récupérables sous Extasie
 HERMAN.FOLD     BIN      33  23-NOV-88       ! ni compréssées, ni codées
 HERMAN.ARMS     BIN      33  23-NOV-88       ! (cf. les 3 autres faces)
 CREDITS         BIN      33  30-NOV-88-------
 MASTER.SYSTEM   SYS       8  30-NOV-88       ; launcher (en $2000) =>------
 SIGNON          BIN       8  <NO DATE>                                     !
 PROG0           BIN       1  30-NOV-88       ; chargeur de niv. (cf.+ bas) !
 FONT            BIN       3  24-AUG-88       ; fontes HGR (A$8D00,L$300)   !
 SHRS            BIN       3  30-NOV-88                                     !
                                                                            !
BLOCKS FREE:   15     BLOCKS USED:  265                                     !
                                                                            !
 ---------------------------------------------------------------------------
!
 -=> Voila donc le prog. qui se charge juste après le ProDOS, et comme la
protection de Roger Rabbit nous envoyait petre juste après le chargement du
ProDOS tout à l'heure, c'est que la vérif. est surement là, donc traçons.

   Pour le charger, faites BLOADMASTER.SYSTEM,A$2000,TSYS, puis CALL-151 et
2000L
*2000:JMP $2009

2009L
*2009:1/ il vectorise le reset (3F2:69 FF 5A)
      2/ il parametre des valeurs en page zéro
         3C:3F (A1L)
         3D:20 (A1H)
         3E:3F (A2L)
         3F:30 (A2H)
         42:00 (A4L)
         43:10 (A4H)
         JSR $FE2C      ; routine de MOVE de la ROM qui utilise les 6
                          parametres précédents de la manière suivante :
                          A4HA4L<A1HA1L.A2HA2LM ce qui correspond donc à
                          1000<203F.303FM
      3/ JMP $1000      ; là où il veut de mouver le prog.

1000L
*1000:JMP $17EF         ; on le trouve en P$1E/B.3F (offset $203F)

17EFL
*17EF:LDX #$2C
      STX $104A
      LDX #$19
      STX $104B         ; met 2C 19 à la place de 69 FF dans $104A
      LDA #$FF          ; équivaut à 11111111 en binaire
      BEQ $180F         ; Branch on EQual si Z=1
      LDA $16EB         ; contient 0 en $16EB
      BNE $180F         ; Branch if Not Equal si Z=0
      LDA #$FF
      STA $16EB         ; maintenant met $FF en $16EB
      JSR $1B00         ; rout. de lecture des nibbles
      BCC $180F         ; Branch on Carry Clear si C=0
      JMP $1A3C         ; va faire un JSR $BF00 => c'est une copie donc
                          va à la rout. ENTER PREFIX donc plante!
*180F:JSR $199B         ; suite normale du chargement, ouf!!!
      JSR $19C3

   D'après ce source commenté de la vérif., on s'aperçoit que la protection ne
s'applique que sur les bits du registre d'états (P), et s'il reconnait que
c'est une copie, il vous envoie en $1A3C (demande ENTER PREFIX), et si c'est un
original, il va en $180F (suite normale du prog.). Donc il suffit de remplacer
le JSR $1B00 par un JMP $180F, donc juste avant qu'il teste l'erreur car c'est
une copie, on l'envoie en $180F, donc continue à charger.

   On recherche ce 20 00 1B sur le disk, on le trouve sur le disk 1, face A en
P$1E/1.46 et on met 4C 0F 18 à l'aide d'un éditeur de secteurs.

   Et puis, et puis, et puis coooollll, on boote et ça marche, on joue, on a
déplombé le soft, en fait pas entièrement : lorsque vous passez la première
étape (Maroon Cartoons) pour accèder à la seconde (Ink'n Paint Club), et bien,
et bien, et bien, on vous demande un mot de passe (password comme dans
Wargames!) que vous ne trouverez que dans la doc. de Roger Rabbit (Gag Catalog)
et étant donné que vous en avez une copie et bien (encore une fois!), vous
l'avez dans le dos! Il faut donc faire sauter aussi cette rout.

   Pour cela, continuons à tracer cette rout., où nous nous en étions arreté :

1815L
*1815:LDA $1003
      ASL
      ASL
      ASL
      ASL
      CLC
      ADC #$EC
      STA $60
      LDA #$16
      ADC #$00
      LDX #$00
      LDY #$60
      JSR $19D5
*182C:JSR $6000

   Cette routine générale est auto-paramètrable, et le programmeur s'en sert
à chaque accès disk (par exemple pour changer de niveau ou pour vous demander
le password!!!).

   Suivant la valeur qu'il trouve en $1003 (mais attention $1004 doit contenir
la valeur de $1003 -1!), il vous envoie à un niveau différent du jeu.

   Ainsi si $1003 contient :
01 => présentation du jeu,
02 => étape du Maroon Cartoons,
03 => demande de password,
04 => étape du Ink'n Paint Club,
07 => the end.

   Si c'est le début d'une étape, cette rout. charge le prog. PROG0 contenu sur
le disk 1 face A, elle s'éxécute en $6000 (grace au JSR $6000 en $182C), charge
le niveau et vous pouvez jouer.
   Si c'est la fin d'une étape, cette rout. charge le prog. TEST contenu sur le
disk 1 face B, elle s'éxécute aussi en $6000 (normal), et vous demande le code.

   Regardons donc ce qu'il y a en $6000 lors d'une demande :
6000L
*6000:JMP $6003
*6003:suite du prog.
      demande code

   Il nous suffit donc pour inhiber cette demande de mettre un RTS en $6000 car
la rout. était envoyée par un JSR $6000. Tout cela se trouve sur le disk 1,
face B, piste $0D, secteur $09, octet $00 : mettre 60 (was 4C)

   J'ai meme poussé un peu les recherches en scannant la mémoire pour savoir
où il stockait les questions et surtout comment il pouvait savoir les réponses
(il ne va tout de meme pas avoir tout le Gag Catalog en RAM!). Ainsi, on
trouve toutes les questions suivies de leurs réponses correspondantes à la
suite les unes des autres de $6326 à $7A64! et il les sépare uniquement par un
00 (5,8 Ko de questions!!!).

   Aussi arrivé à ce niveau du prog., il vectorise le reset différement. Il
met en $3F2:JMP $1039 qui JMP $1A3C qui JSR $BF00 qui vous envoye à la demande
de préfix ProDOS.



   Au fait, une petite astuce pour jouer à la première épreuve :
   Une pression sur un des boutons du joystick permet de sortir les ressorts de
la voiture et deux pressions rapides permet de sauter en l'air (il n'y a donc
pas besoin de bouger la manette au meme moment!)



   Et maintenant un petit fix :
- Maroon Cartoons :
disk 1B, P$0D/B.36 : 05 => nbr de dipbuckets (max. 255 = $FF)
disk 1B, P$10/4.C4 : EE->AD => vies infinies (case mémoire $1FFF)
- Ink'n Paint Club
disk 2A, P$03/6.DF : EE->AD => vies inf.
disk 2A, P$03/6.F8 : EE->AD => vies inf.
- Gag Factory (en théorie)
disk 2B, P$00/1.4A : EE->AD => vies inf.
disk 2B, P$00/1.66 : EE->AD => vies inf.



   "Mais qui veut la bite de Roger Le Rabin?"



_WHO_FRAMED_ROGER_RABBIT?________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Street Sports Basketball.


 _____________________________________________________________________________
!                                                                             !
! STREET SPORTS BASKETBALL (C) 1988 Epyx         (K) THE JOKERSOFT - 31/ 8/88 !
!_____________________________________________File : THE JOKERSOFT_-_22/ 2/89_!



   Tu veux de la protection Epyx et bien en voilà. Nous sommes reparti pour
vous expliquer ce type de désynchro de pistes appliquée à Street Sports
Basketball.

   Faire une copie demuffinisée de l'original.

   Appliquons la technique de boot-tracing.

   En analysant le boot 1, on trouve en $84A un JMP $BB00, listing où se
trouve la protection.

   On récupère les valeurs de désynchro par la méthode habituelle. On trouve
FC EE EE FC (Il n'y a ici que 4 EOR #$ par rapport à d'autres qui en ont 8!)

   Puis on implante notre chère routine en $BB00 pour décoder tout ça (ici,
cela correspond à la piste $00, secteur $05, octet $00) :

   A9 FC       LDA #$FC
   85 F0       STA $F0
   85 F3       STA $F3
   A9 EE       LDA #$EE
   85 F1       STA $F1
   85 F2       STA $F2
   4C 79 BB    JMP $BB79

   Et ça boot impec.



_STREET_SPORTS_BASKETBALL________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Street Sports Football.


 _____________________________________________________________________________
!                                                                             !
! STREET SPORTS FOOTBALL (C) 1989 Epyx        Cracked by LOOCKHEED - 14/ 5/89 !
!_____________________________________________File : THE JOKERSOFT_-_10/ 7/89_!

                                                            Update : 21/ 9/89


   Pour commencer, je tiens à remercier Copperfield pour son aide pour rédiger
ce fichier, et pas pour Loockheed qui m'a dit c'est juste une histoire de
retenue...

   Alors, il faut que je vous dise quelque chose : c'est un Epyx! Alors
pourquoi je n'abrège pas ce fichier. En fait, Epyx a changé sa protection
tout en restant basée sur le meme principe de désynchro, mais maintenant il
ne s'agit plus qu'une histoire de retenue comme me disait ... donc qu'un seul
octet à changer, mais on va tout comprendre le comment du pourquoi (séquence
DECOUVERTE) :

   Première étape : boot-tracing classique puis 801L. C'est un E-Boot 0
habituel qui se termine par un 84A:JMP $BC1D

   Deuxième étape : boot-tracing part 2 :
*16F8:A9 59 8D 4B 8 A9 FF 8D 4C 8 4C 1 8
*1600G
*C0E8
*BC1DL (<=> P$0/6.1D sur le disk)

   En $BC27:JSR $B9A0

*B9A0L
Il s'agit d'une première SEEKABS :
- l'accumulateur A et la case mémoire $2A contiennent le numéro de la piste de
  destination multipliée par 2 (ici, $44 donc P$22)
- le registre d'index X et la case mémoire $2B contiennent le numéro du secteur
  de la désynchro (ici S$0F)
Donc désynchro en P$22,S$0F.
Donc si BEQ, JSR en $B9FC où l'on trouve un RTS sinon dommage!
Alors on revient en $BC2A:JSR $BB03

*BB03L
1/ move page zéro en $5000 => SAVE
2/ JSR $BC00 (on va y aller, 2 sec!)
3/ move $5000 en page zéro => LOAD

*BC00L
1/ vectorise le reset ($3F2)
2/ JMP $BB30

*BB30L
1/ blah-blah (on va y revenir!)
2/ JSR $B944

*B944L
Il s'agit d'une SEEKABS normale de Dos 3.3 avec
- les parametres classiques :
  $2C : checksum
  $2D : numéro de secteur
  $2E : numéro de piste
  $2F : numéro de volume
- la lecture des headers (LDA $C08C,X)
  *B954:CMP #$D5
  *B95E:CMP #$AA
  *B969:CMP #$96
  *B990:CMP #$DE
  *B99A:CMP #$AA
  *B99F:RTS (fini!)

   Puis il revient. Il compare $2D qui contient le numéro de secteur à #$0F
(secteurs de la désynchro), puis BNE en $BB48 où il trouve un DEC $08 (qui
correspond aux 8 valeurs de la désynchro) d'où 8 lectures puis BEQ $BBA8
(c'est-à-dire presque la fin du calvaire!)

*BBA8L
:DEC $09
:BNE $BB44
:SEC       ==> mise à 1 de la retenue ((C)arry)
:RTS

   Puis il revient. Il BCS (branchement si retenue) en $BBA8, c'est-à-dire
qu'il boucle à l'infini, c'est-à-dire qu'il se plante => chouette! c'est là!!!
Si pas de retenue, va à la routine en $BB51, c'est-à-dire compare les headers
(ici valeurs de désynchro) CMP #$E7 / CMP #$E7 / CMP #$E7 / CMP #$EE. Il
continue à chercher, c'est BON!!!
Il faut donc virer cette retenue, donc à la place du SEC on met un CLC...
On recherche la routine sur le disk : P$0/5.AC : 38->18

   D'ailleurs on trouve les valeurs des 8 désynchro en :
$BBAE:FC EE EE FC E7 EE FC E7 (<=> P$0/5.AE), notre "ùnnùgnùg" si célèbre
(si! si! regardez les correspondances en ASCII).

   Avant de terminer ce fichier, j'allais oublier de vous dire qu'il faut
demuffinisser le disk avant de pouvoir modifier des octets sur votre copie.
Et vous allez avoir un gros problème (n'est-ce pas Max Headroom???), c'est que
vous ne pourrez pas demuffuniser la piste $22, et oui c'est celle qui porte la
désynchro. Mais c'est pas grave vous n'en avez plus rien a faire car vous
aurez shunté la vérif'. Formattez cette piste et cela vous fera 16 secteurs de
plus pour signer votre soft.



_STREET_SPORTS_FOOTBALL_________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Street Sports Soccer.


 _____________________________________________________________________________
!                                                                             !
! STREET SPORTS SOCCER (C) 1988 Epyx          Canadian Importation - 11/ 2/89 !
!_____________________________________________File : THE JOKERSOFT_-_14/ 8/89_!



   Tu veux de la protection Epyx et bien en voilà. Nous sommes reparti pour
vous expliquer ce type de désynchro de pistes appliquée à Street Sports Soccer.

   Faire une copie demuffinisée de l'original.

   Appliquons la technique du boot-tracing.

   En analysant le boot 1, on trouve en $84A un JMP $BB00, listing où se
trouve la protection.

   On recupère les valeurs de désynchro par la méthode habituelle. On trouve
FC EE EE FC E7 EE FC E7.

   Puis on implante notre chère routine en $BB00 pour décoder tout ça (ici,
cela correspond à la piste $00, secteur $05, octet $00 :

   A2 07      LDX #$07
   BD 10 BB   LDA $BB10,Y
   95 F0      STA $F0,Y
   CA         DEX
   10 F8      BPL $0002
   4C 18 BB   JMP $BB18
   00 00
   FC EE EE FC E7 EE FC E7

   Et ça boot impec.



_STREET_SPORTS_SOCCER____________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Spiderbot.


 _____________________________________________________________________________
!                                                                             !
! SPIDERBOT (C) 1988 Epyx / FACS              Cracked by LOOCKHEED - 29/ 7/89 !
!_____________________________________________File : THE JOKERSOFT_-_ 1/ 8/89_!



   Tu veux de la protection Epyx et bien en voilà. Nous sommes reparti pour
vous expliquer ce type de désynchro de pistes appliquée à Spiderbot (Et dire
qu'on l'attendait depuis 1 an et demi!!!)

   Faire une copie demuffinisée de l'original.

   Appliquons la technique du boot-tracing.

   En analysant le boot 1, on trouve en $84A un JMP $BB00, listing où se
trouve la protection.

   On recupère les valeurs de désynchro par la méthode habituelle. On trouve
E7 FC EE E7 FC EE EE FC.

   Puis on implante notre chère routine en $BB00 pour décoder tout ça (ici,
cela correspond à la piste $00, secteur $05, octet $00 :

   A2 07      LDX #$07
   BD 10 BB   LDA $BB10,Y
   95 F0      STA $F8,Y
   CA         DEX
   10 F8      BPL $0002
   4C 70 BB   JMP $BB70
   00 00
   E7 FC EE E7 FC EE EE FC

   Et ça boot impec.



_SPIDERBOT_______________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Spy vs Spy 3.


 _____________________________________________________________________________
!                                                                             !
! SPY VS SPY 3 (C) 1988 Epyx                  Cracked by The Highlanders Team !
!_____________________________________________File : THE JOKERSOFT_-_22/ 2/89_!



   Tu veux de la protection Epyx et bien en voilà. Nous sommes reparti pour
vous expliquer ce type de désynchro de pistes appliquée à Spy vs Spy 3.

   Faire une copie demuffinisée de l'original.

   Appliquons la technique de boot-tracing.

   En analysant le boot 1, on trouve en $83A un JMP $BB00, listing où se
trouve la protection.

   On récupère les valeurs de désynchro par la méthode habituelle. On trouve
FC EE EE FC E7 EE FC E7.

   Puis on implante notre chère routine en $BB00 pour décoder tout ça (ici,
cela correspond à la piste $00, secteur $05, octet $00) :

   A0 07      LDA #$07
   B9 10 BB   LDA $BB10,Y
   99 F0 00   STA $00F0,Y
   88         DEY
   10 F7      BPL $0002
   4C 7A BB   JMP $BB7A
   00 00
   FC EE EE FC E7 EE FC E7

   Et ça boot impec.



_SPY_VS_SPY_3_____________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Star Rank Boxing 2.


 _____________________________________________________________________________
!                                                                             !
! STAR RANK BOXING 2 (C) 1988 Gamestar        (K) C.C+LCKD+OLT+TJS - 31/12/88 !
!_____________________________________________File : THE JOKERSOFT_-_ 7/ 2/89_!



   Première chose, l'original de Star Rank Boxing 2 (SRB2) est copiable au
Locksmith 6.0.

   Appliquons la méthode du boot-tracing (part I) :

]CALL-151
*1600<C600.C700M
*16F8:4C 59 FF
*1600G
*C0E8
*801L

   Et on trace le boot 1 de SRB2.

   On remarque un premier saut direct en $8E2:JMP $B700, tiens on saute en
plein dans la RWTS! Il faut donc récupérer cette routine en $B700.

   Appliquons la technique du boot-tracing (part II) :

*16F8:A9 59 8D E3 08 A9 FF 8D E4 08 4C 01 08
c-à-d.
*16F8:LDA #$59
      STA $8E3
      LDA #$FF
      STA $8E4     ; va mettre $8E2:JMP $FF59
      JMP $801     ; éxécute boot 1.

   Puis *B700L

   Et on trace le boot 2 de SRB2.

   On remarque le premier saut direct en $B760:JMP $2000, tiens on saute en
plein dans la page HGR! Il faut donc récupérer cette routine en $2000 avant
que celle-ci ne soit écrasée par la présentation.

   Appliquons la technique du boot-tracing (part III) :

*16F8:A9 05 8D E3 08 A9 17 8D E4 08 4C 01 08 A9 59 8D 61 B7 A9 FF 8D 62 B7 4C
      00 B7
c-à-d.
*16F8:LDA #$05
      STA $8E3
      LDA #$17
      STA $8E4      ; va mettre $8E2:JMP $1705
      JMP $801      ; éxécute boot 1.
*1705:LDA #$59
      STA $B761
      LDA #$FF
      STA $B762     ; va mettre $B760:JMP $FF59
      JMP $B700     ; éxécute boot 2.

   Puis *2000L

   Et on trace le boot 3 de SRB2.

   On a un premier saut indirect en $2016:JSR $2156.

   Dans cette sub-routine en $2156, on trouve en $216E :

*216E:A5 FF        LDA #$FF     ; charge $FF
      38           SEC          ; met la retenue à 1 (=> soustraction)
      E9 35        SBC #$35     ; soustrait immédiatement $35
      85 FF        STA $FF      ; stocke le résultat en $FF
      20 4F 22     JSR $224F    ; saute indirectement en $224F
*2178:suite

   Donc il commence à tester la valeur contenue en $FF, pour reconnaitre si
la diskette dans le drive est l'original ou une affreuse copie pirate.

   En $224F, on aura peut-etre le test de cette valeur de la page zéro.

*224F:A5 FF        LDA $FF      ; charge la valeur en $FF
      D0 01        BNE $2254    ; si elle est négative, va en $2254
      60           RTS          ; sinon poursuit le prog. (retourne en $2178)
*2254:2C 54 C0     BIT $C054    ; début de la routine qui affiche
                                PLEASE PUT ORIGINAL IN DRIVE 1

   Il cherche donc à trouver la valeur 00 en $FF, sinon cela plante.

   Alors se présente 2 solutions :

 1 - Méthode Captain Crack : (le truc efficace et clean!)

   On met un LDA #$00 avant un STA $FF, ce qui est possible en $2171
   (ce qui correspond sur le disk à P$1/6.71 : E9 35 -> A9 00)
   Et ça boot impec'.

 2 - Méthode Oliver Twist ou The JokerSoft : (le truc crad et chiant!)

   On met un RTS en $224F puisque c'est ce que cherche cette sub-sub-routine.
   (ce qui correspond sur le disk à P$1/5.4F : A5 -> 60)
   Mais ça boote pas impec' => "Shit Of Dog!" (Tm) TBT
   Alors, comme on est malin, on a recherché la meme routine sur le disk :
   (c-à-d. A5 FF D0 01 60)
   Et il y en a une autre en P$1/8.34 : A5 -> 60
   Et ça boot impec'.

   Les 2 méthodes marchent parfaitement puisque la copie marche, et dans les
2 cas, on a changé que 2 octets, mais la première méthode est quand meme plus
clean!!!



   Et comme, on est vraiment très gentil, on vous file un petit fix dont
l'utilité est très réduite mais c'est pas grave :

   P$14/F.47 : 01 -> round (C.M $FEF)
   P$14/F.CE : 02 -> min   (C.M $FF0)
   P$14/F.D3 : 3C -> sec+1 (C.M $FF1)



_STAR_RANK_BOXING_2______________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

The games : Summer Edition.


 _____________________________________________________________________________
!                                                                             !
! THE GAMES : SUMMER EDITION (C) 1988 Epyx    Cracked by LOOCKHEED - 18/12/88 !
!_____________________________________________File : THE JOKERSOFT_-_ 6/ 2/89_!



   Tu veux de la protection Epyx et bien en voilà. Nous sommes reparti pour
vous expliquer ce type de désynchro de pistes appliquée à The Games : Summer
Edition.

   Attention : Formattez votre blank disk avec le numéro de volume 001, à
l'aide de DiskFixer 4.0 (option E).

   Faire une copie demuffinisée de l'original.

   Appliquons la technique du boot-tracing.

   En analysant le boot 1, on trouve en $886 un JSR $1A00, listing où se
trouve la protection.

   On récupère les valeurs de désynchro par la méthode habituelle. On trouve
FC EE EE FC E7 EE FC E7.

   Puis on implante notre chère routine en $1A00 pour décoder tout ça (ici,
cela correspond à la piste $00, secteur $08, octet $00) :

   8D 03 C0   STA $C003
   A2 07      LDX #$07
   BD 10 1A   LDA $1A10,Y
   95 F0      STA $F0,Y
   CA         DEX
   10 F8      BPL $0002
   4C 85 1A   JMP $1A85
   00 00
   FC EE EE FC E7 EE FC E7

   Et ça boot impec.



_THE_GAMES_:_SUMMER_EDITION______________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Tangled Tales (1).


    ________________________________________________________________________
  _!_                                                                      _!_
 !_ _!    TANGLED TALES (C) ORIGIN SYSTEM  RWTS 18 secteurs By Loockheed  !_ _!
   !________________________________________________________________________!
        !______________________________________________________________!
             !___________________________________________________!

                     ******************************************
                     * QUELQUES GENERALITES SUR LA PROTECTION *
                     ******************************************

       
         BY LOOCKHEED FROM THE BRAIN TRUST (16 SEP.89)
            ---------      ---------------
        
      Salut les fous, ici Loockheed from THE BRAIN TRUST pour vous parler de la
toute dernière protection Origin System : Un tout nouveau 18 secteurs ! M'étant
fait une spécialité de ce genre de crack ( THE LAST NINJA, TETRIS et maintenant
TANGLED TALES ), je m'en vais vous decortiker la nouvelle routine 18 secteurs.
Je voudrais tout d'abord féliciter l'auteur du plombage qui a su allier une
puissante protection format (18 secteurs !) et une protection nibble quoique
cette derniére soit un peu grossiére. En effet sur le disk ADVENTURER No1 on
peut remarquer que la piste #$13 est formatée d'une maniére assez bizzare : des
tonnes de #$AA suivis de quelques merdes. Une vérification efface la mémoire à
partir de $6000 si elle ne trouve pas ces #$AA ( cette vérif' se déclenche kan
vous roupillez dans le jeu ). Elle fut quand meme chiante à trouver codée par
un EOR #$FF.

J'espère que ce fichier vous sera profitable et k'il vous apprendra comment on
"décortike" une routine. Kan je fais ce genre de travail, je commence par
chercher ce que j'appellerai le "coeur" de la routine c'est à dire la partie où
il y'a des $C08C,X ($C0EC,X!), ce qui me permettra de savoir le codage, ou il
stocke les no de volumes, identifier toutes les variables qu'il utilisent dans
le prgr principal. Ce travail m'a pris pas mal de temps et j'espère que
certains n'utiliseront pas ce source à des fins lucratives - en vendant des
cours sur la dernière protection TANGLED TALES for instance (Non je ne vise
personne mais ce "personne" ne m'inkiète pas trop vu k'il ne comprendra jamais
- à moins que les racines carrées se soient enfin décidées à pousser dans les
champs magnétiques ! - rien à cette protection ou plutot si kan il aura "pompé"
tout mon crack de TANGLED TALES !) -

Pour éviter toute ambiguité ce " personne " se nomme en fait GDF. Bon que dire
d'autre? Oui, sachez que comprendre cette routine constitue environ allez je
dirais 20% du crack ( au max ! ), Le reste est affaire de programmation, de
réorganisation de disk et d' (un peu d') astuce... 


***************
*             *
*  LE FORMAT  *
*             *
***************

* Le format n'est pas le meme que celui du
* DOS 3.3, en effet les programmeurs du
* DOS 3.3 separent le secteur en deux buffers
* de nibble : le premier ( #$56 nibbles ) contient
* les nibbles qui manquent au second buffer
* pour former les octets.

* Ici, le programmeur a procede de la facon
* suivante :
* Il prend trois octets qu'il transforme en 4 nibbles
* (pas de separation de buffer donc!)
* Il prend les bits 7 et 8 de ces trois octets et les met
* dans un 4eme (le 4eme octet sert donc de decharge de bit
* pour les 3 autres octets!)
* donc 3 octets de la forme (en bit language) :

* 01234567 ABCDEFGH IJKLMNOP
* 1e octet 2e octet 3e octet

* se transforme sur le disk en

* XX01ABIJ XX234567 XXCDEFGH XXKLMNOP
* NIBBLE1  NIBBLE2  NIBBLE3  NIBBLE4
* "décharge"
* par une série de rotations et de calculs assez complexes!
* voila pour le format.... ( Pour plus d'information reportez
* vous à la routine de pre-nibblelization! )
* Vous comprenez donc bien qu'il n'a pas besoin de buffer secondaire
* cela m'a posé des pbm car en réecrivant la routine de lecture je n'avais
* pas de place en mémoire et j'ai du recourir à une ruse follE!

**************
*            *
*  LE TEXTE  *
*            *
**************

* Dans le déplombage du jeu, il m'a été utile
* de comprendre comment il affichait des caractères graphiks
* bon en fait c'est très simple :
* les caractères sont codés comme suit :
* 0 : espace
* $01-$1B : lettre capitale
* $1C-$36 : lettre minuscule
* après c'est le chiffre et les signes de ponctuation....
* Ceci montre que les caractères ont été compressés (en effet
* il prend les premiers nombres hexa ( ceux ki on le + de bit
* à zero donc + facile a compresser!). Le décompresseur
* met les caractères codés comme je l'ai dit
* en $230 (dans le buffer clavier koi!) donc le dernier text
* affiche vous le retrouveriez ici.

* voila... let's begin with the vif of the topic....

 LST OFF

******************************
*                            *
*   ENTREE PRINCIPALE DU     *
*     MINI DOS DU 18S        *
*                            *
*  Parms :                   *
*  X-Register : BUFFER HAUT  *
*  (le buffer bas pourra     *
*  changer selon le pseudo   *
*  catalogue)                *
*  Acc : No de programme     *
*                            *
******************************

 JMP MINIDOS

******************************
*                            *
*        >> LECTURE <<       *
* Parms :                    *
* Accumulateur : BUFFER HAUT *
* X-reg        : PISTE       *
* Y-reg        : SECTEUR     *
* FLAG_18OR16 n'est pas      *
* positionne donc s'il est   *
* positif, on lira du 16s    *
* JMP LECTURE                *
*                            *
******************************

 JMP LECTURE

******************************
*                            *
*       >> ECRITURE <<       *
* Parms :                    *
* Accumulateur : BUFFER HAUT *
* X-reg        : PISTE       *
* Y-reg        : SECTEUR     *
* JMP ECRITURE               *
*                            *
******************************

 JMP ECRITURE

 JMP H6775 ; Eteint le drive (sous réserve de certains flag...)

*******************************
*                             *
*  DEMANDE D'INSERTION D'UN   *
*  DISK DONT LE VOLUME AURA   *
* ETE MIS DANS L'ACCUMULATEUR *
* AVANT L'APPEL DE LA ROUTINE *
*                             *
*******************************

 JMP ASKFORDISK

 JMP H601D ; ça doit pas servir à grand chose...

******************************
*                            *
*        >> LECTURE <<       *
*             18S            *
* Parms :                    *
* Accumulateur : BUFFER HAUT *
* X-reg        : PISTE       *
* Y-reg        : SECTEUR     *
* FLAG_18OR16 est            *
* positionne  --> read 18s   *
* JMP LCTURE18S              *
*                            *
******************************

 JMP LCTURE18S

H6015       HEX 01
H6016       HEX 00
H6017       HEX FF
            HEX FF
VOLUME      HEX 3F
H601A       HEX FF
H601B       BRK
H601C       BRK

H601D       LDY #$00        ; ???? Celui qui sait à quoi ça sert,
            STY H047F       ; ???? je lui offre un verre d'eau...
            JMP HC700       ; ???? ( SI !! )


H6025       LDA #$02        ; routine servant à lire un secteur
            LDX #$14        ; dans le but de savoir le volume du disk
            LDY #$00        ; (sert à la routine LABEL : "ASKFORDISK")
            JMP LECTURE

            BRK
            BRK
            BRK
            BRK
            BRK
            BRK
            BRK
            BRK
            BRK

* kan on arrive là on vient juste de lire le champ adresse
* sauf kon n'a pas lu la checksum

WRITMAIN    JSR DECOD4.4        ; on saute cette p.. de chk..
            SEC
            LDA HC0ED
            LDA HC0EE
            BPL H6046           ; write protected ?
            JMP H60D            ; oui traite l'erreur...
H6046       LDX #$00
            STX H606C+1
            LDA #$FF            ; on ecrit six nibbles de synchro
            STA HC0EF,X
            ORA HC0EC
            PHA                 ; ces conneries servent
            PLA                 ; pour le timing...
            NOP
            LDY #$06            ; init la boucle...
 H6058      PHA
            PLA
            JSR H60E6
            DEY
            BNE H6058       ; nib synchro test end...
            NOP
            NOP
            LDA #$B5        ; on écrit #$B5 (debut secteur champ donnee...!)
            JSR H60E5       ; write..
            LDA #$AA        ; puis #$AA
            JSR H60E5       ; write....

* $500-$556 contiennent les nibbles avec les bits manquant aux trois autres
* nibbles pour former 4 octets...

H606C      LDA H0500       ; premier nibble...
           INC H606C+1     ; on incrémente la précédente adresse ($500!))
           AND #$3F        ; on enlève les deux bits de poids fort (de
           TAX             ; gauche!)
           LDA H6300,X     ; on le translationne....
           STA HC0ED       ; on l'écrit...
           ORA HC0EC
           LDA $2B         ; timing...
H6080      LDA H2000,Y     ; on prend le 1er octet du buffer
           STA $2B         ; (de la forme XX01234567)
           AND #$3F        ; on vire les deux bits de gauche
           TAX
           LDA H6300,X     ; on le translationne
           NOP
           NOP             ; timing...
           NOP
           STA HC0ED       ; on l'écrit...
           ORA HC0EC
           LDA $2B
           CPY #$FF        ; si on a terminé d'écrire le secteur
           BEQ H60C6       ; on se branche la..
H609A      LDA H2001,Y     ; on prend le deuxième octet
           STA $2B         ; qui va donner le nibble de la forme
           AND #$3F        ; XXABCDEF
           TAX
           LDA H6300,X     ; pareil...
           NOP
           STA HC0ED
           ORA HC0EC
H60AC      LDA H2002,Y     ; enfin le 3ème...
           AND #$3F
           TAX
           LDA H6300,X
           INY
           INY
           INY
           NOP
           NOP
           NOP
           STA HC0ED       ; on l'écrit..
           ORA HC0EC
           LDA $2B
           JMP H606C
H60C6      LDA #$00        ; écriture de l'octet de checksum
           AND #$3F
           TAX
           LDA H6300,X
           JSR H60F4       ; go write..
           LDA #$DE
           JSR H60EF
           LDA #$FF
           JSR H60EF       ; nib synchro...
           JSR H60EF
H60DE      LDA HC0EE       ; fin mode ecriture
           LDA HC0EC
           RTS
H60E5      CLC             ; à partir de la qq routine
H60E6      PHA             ; ki n'on k'un but : écrire
           PLA             ; avec des timings différents...
           STA HC0ED,X
           ORA HC0EC
           RTS
H60EF      CLC
           NOP
           NOP
           NOP
           NOP
H60F4      STA HC0ED
           ORA HC0EC
           RTS


*----> routine de pre-nibblelization !!!

H60FB      LDY #$00      ; init some parms
           STY H6104+1   ; remet a zero le buffer
           STY $2C       ; et ça aussi...
H6102      LDX #$03      ; nombre d'octet (3 octets ---> 4 nibbles !)
H6104      LDA H2000     ; premier octet du buffer..
           PHA           ; on l'empile
           ROL           ; sauve son octet 7 dans la retenue
           ROL $2B       ; fait passer la retenue dans le bit 0
                         ; de la case mémoire $2B
           ROL           ; sauve son octet 6 (qui est maintenant à
                         ; la 7ème place car il y'a eu deéalage !)
                         ; dans la retenue
           ROL $2B       ; puis fait passer ce bit dans le bit 0 de la
                         ; case mémoire $2B (l'autre bit est maintenant
                         ; en position 1 car il y'a eu décalage !)
           PLA           ; on dépile
                         ; attention cette partie de routine se
                         ; repète 3 fois donc avec les décalages,
                         ; les bits 6 et 7 du premier octet se retrouve
                         ; respectivement a la 4 et 5ème position
                         ; les bits 6 et 7 du deuxième octet se retrouve
                         ; respectivement a la 2 et 3ème position
                         ; les bit 6 et 7 du troisième octet se retrouve
                         ; respectivement a la 0 et 1 position
           EOR $2C       ; sert pour la checksum (?)
           STA $2C
           INC H6104+1   ; incrémente le buffer de 1

           BEQ H6123     ; si
           DEX           ; tant qu'on a pas rempli le nibble "de décharge
           BNE H6104     ; on continue...
           LDA $2B       ; autrement
           STA H0500,Y   ; on le met dans le buffer $500
           INY           ; tant qu'on a pas atteint la fin on
           BNE H6102     ; continue...
H6123      STA H60C6+1   ; octet de checksum
           ROL
           ROL $2B
           ROL
           ROL $2B
           LDA $2B
           ASL
           ASL
           STA H0500,Y
           RTS




A SUIVRE! FICHIER : TANGLED TALES (2)                                 LOOCKHEED


Retour sommaire

hr Crackware

Tangled Tales (2).




READORWRITE LDA #$04     ; Initialisation pour le compteur
           STA H627D     ; d'essai
H6139      LDX #$FF      ; meme chose...
           STX $2C

           BIT FLAG_18OR16
           BMI FIELD18S
                         ; lit on une piste 18s ou une piste 16s?
                         ; si le FLAG est négatif on lit un 18s.
H6142      INC $2C
           BNE H614C
           DEX           ; compteurs d'essai
           BNE H614C
H6149      JMP H61FD     ; si y'en a trop on va à la routine
                         ; qui gère les erreurs

H614C      JSR READNIBBLE  ; on va chercher un nibble sur le disk
H614F      CMP #$D5        ; est-ce #$D5?
           BNE H6142       ; NON
           JSR READNIBBLE  ; OUI
H6156      CMP #$AA        ; est-ce #$AA?
           BNE H614F       ; NON
           JSR READNIBBLE  ; OUI
           CMP #$96        ; est-ce #$96?
           BNE H6156       ; NON
           JSR DECOD4.4    ; va chercher et décoder les différents
                           ; parms codés en 4.4
           CMP VOLUME      ; est-ce le bon volume ?
           BEQ GOODVOL
           JMP H6271       ; non
GOODVOL    JSR DECOD4.4
           CMP PISTE       ; est-ce la bonne piste?
           BNE ERRPISTE
           JSR DECOD4.4
           CMP SECTEUR     ; est-ce le bon secteur ?
           BNE H6142
           JSR DECOD4.4    ; dernier saut pour "sauter la CHECKSUM"
                           ; dont il a l'air de se foutre eperdument...
           JSR H6264       ; on va lire le DE de fin de champ
           BCS H6149       ; si y'a pas d'erreur on continue...

           BIT FLAG_READ_WRI
           BPL H618C
                            ; si on est en mode lecture on continue plus
                            ; bas sinon on va en WRITMAIN
           JMP WRITMAIN

H618C      LDY #$00         ; initialisation compteur d'essai
           STY $2B
           LDX #$00         ; idem
H6192      INY
           BEQ H6149        ; too many essais ) y=0 (
           JSR READNIBBLE
H6198      CMP #$B5         ; on recherche maintenant
           BNE H6192        ; le début de champ donnee " B5 AA "
H619C      LDA HC0EC
           BPL H619C
           CMP #$AA
           BNE H6198
           BEQ H620D

FIELD18S   LDY #$00      ; là on recherche les entetes de la piste 18s
           STY $2B       ; qui est codée comme suit :
H61AB      INC $2C       ; Debut de piste : D5
           BNE H61B2     ; Les 3 nibbles qui suivent servent
           DEX           ; à coder respectivement
           BEQ H6149     ; -La piste
H61B2      LDA HC0EC     ; -Le secteur
           BPL H61B2     ; -Le volume
           CMP #$D5      ; Attention ces 3 nibbles seront a prendre
           BNE H61AB     ; en compte seulement apres etre passés
H61BB      LDY HC0EC     ; dans la table de post-nibblelization!
           BPL H61BB
           LDA H6200,Y   ; la voila cette belle table !
           CMP PISTE     ; bonne piste ?
           BNE H61AB
H61C8      LDY HC0EC
           BPL H61C8
           LDA H6200,Y
           CMP SECTEUR   ; bon secteur ?
           BNE H61AB
           LDX #$00
           LDA VOLUME
H61DA      LDY HC0EC
           BPL H61DA
           CMP H6200,Y   ; volume correct ?
           BEQ H620D
           JMP H6271

* Donc pour coder le champ adresse d'un secteur d'une piste 18s on aura
* un truc du style : D5 97 97 97 pour coder la piste 0 secteur 0 volume 0
* ( n'oubliez pas que 97 devient 0 après l'indexation sur la table de
* translation... )

ERRPISTE   LDY H6016
           CMP #$60
           BCS H6204
           STA H6016
           TYA
           DEC H627D
           BEQ H61FD
           JSR SEEKABS
           JMP H6139
H61FD      DEC H627C
H6200      BNE H6204
           SEC
           RTS
H6204      LDA H6016
           JSR RECALIBRATE
           JMP READORWRITE


H620D      LDY HC0EC     ; routine de décodage du secteur
           BPL H620D     ; ( transformer
           LDA H6200,Y   ; 342 nibbles en 255 octets )
           ASL           ; ( Le format est explike dans le début de ce
           ASL           ; source )
           TAY
           ASL
           ASL
           STA $2C
           TYA
           AND #$C0
H621F      LDY HC0EC
           BPL H621F
           ORA H6200,Y
H6227      STA H2000,X   ; ce buffer est positionne selon BUFFER
           EOR $2B       ; ( $627E )
           STA $2B
           LDA $2C
           AND #$C0
H6232      LDY HC0EC
           BPL H6232
           ORA H6200,Y
           INX
           BEQ H625B
H623D      STA H2000,X   ; idem pour celui-ci
           EOR $2B
           STA $2B
           LDA $2C
           ASL
H6247      LDY HC0EC
           BPL H6247
           ASL
           ORA H6200,Y
           INX
H6251      STA H2000,X   ; idem pour celui-la
           EOR $2B
           STA $2B
           INX
           BNE H620D
H625B      CMP $2B
           BNE H6271

           BIT FLAG_18OR16
           BMI H626D     ; si on lit un 18s il n'y pas de fin de
                         ; champ donnée !
H6264      LDA HC0EC
           BPL H6264
           CMP #$DE      ; lecture d'un fin de champ donnée/adresse
           BNE H626F
H626D      CLC
           HEX 24        ; sortie avec carry a 1 si erreur.
H626F      SEC
           RTS
H6271      DEC H627D     ; décrémentation du compteur principal d'essai
           BMI H626F     ; (mis a 4 au début de la routine, si il devient
           JMP H6139     ; négatif sorti principal en erreur (carry=1))

FLAG_READ_WRI HEX 00
FLAG_18OR16   HEX 00
H627B         HEX FF
H627C         HEX 00
H627D         HEX 00
BUFFER        HEX 00
PISTE         HEX 00
SECTEUR       HEX 00
FLAG_DRIVE    HEX 00
H6282         HEX 00

DECOD4.4   LDA HC0EC     ; décodage de deux nibbles en
           BPL *-3       ; 4.4
           SEC           ; résultat mis dans Acc
           ROL
           STA $2B
           PHA
           PLA
           LDA HC0EC
           BPL *-3
           AND $2B
           RTS

******************************
* NIBBLE POST-NIBBLELIZATION *
******************************

 HEX 0001989902039C040506A0A1A2A3A4A50708A8A9AA090A0B0C0DB0
 HEX B10E0F10111213B81415161718191AC0C1C2C3C4C5C6C7C8C9CA1B
 HEX CC1C1D1ED0D1D21FD4D52021D822232425262728E0E1E2E3E4292A
 HEX 2BE82C2D2E2F303132F0F1333435363738F8393A3B3C3D3E3F

******************************
* NIBBLE PRE- NIBBLELIZATION *
******************************

H6300 HEX 96979A9B9D9E9FA6A7ABACADAEAFB2B3B4B5B6B7B9BABBBCBDBE
      HEX BFCBCDCECFD3D6D7D9DADBDCDDDEDFE5E6E7E9EAEBECEDEEEFF2
      HEX F3F4F5F6F7F9FAFBFCFDFEFF

READNIBBLE LDA HC0EC ; lecture bète d'un nibble
           BPL *-3
           RTS

RECALIBRATE PHA          ; recalibration bruyante
          LDA #$60       ; on fait croire que la pioche est sur la piste
          STA H6016      ; $30 ($60/2!)
          LDA #$00       ; pour ensuite la recalibrer a 0
          JSR SEEKABS
          PLA            ; puis on dépile la piste qu'on voulait
                         ; atteindre apres la recalibration !
SEEKABS   PHA            ; dans A = Piste que l'on veut atteindre
          ASL            ; dans H6016 : Piste actuellement présente
          ASL H6016      ; sous la pioche (*2!)
          JSR H635F
          PLA
          STA H6016
          RTS
H635F     STA $2B
          CMP H6016
          BEQ H63B5
          LDA #$00
          STA $2A
H636A     LDA H6016
          STA $2C
          SEC
          SBC $2B
          BEQ H63A7
          BCS H637D
          EOR #$FF
          INC H6016
          BCC H6382
H637D     ADC #$FE
          DEC H6016
H6382     CMP $2A
          BCC H6388
          LDA $2A
H6388     CMP #$0C
          BCS H638D
          TAY
H638D     SEC
          JSR H63AB
          LDA H63C7,Y
          JSR H63B6
          LDA $2C
          CLC
          JSR H63AE
          LDA H63D3,Y
          JSR H63B6
          INC $2A
          BNE H636A
H63A7     JSR H63B6
          CLC
H63AB     LDA H6016
H63AE     AND #$03
          ROL
          TAX
          LDA HC0E0,X
H63B5     RTS
H63B6     LDX #$11
H63B8     DEX
          BNE H63B8
          INC $46
          BNE H63C1
          INC $47
H63C1     SEC
          SBC #$01
          BNE H63B6
          RTS
H63C7     HEX 01302824201E1D1C1C1C1C1C
H63D3     HEX 702C26221F1E1D1C1C1C1C1C

FIXPARMS  STA BUFFER ; sauve les paramètres
          STX PISTE
          STY SECTEUR
          RTS

LECTURE   CLC            ; on remarque que c'est pratiquement la meme
          HEX 24         ; entrée pour l'écriture et la lecture.
ECRITURE  SEC            ; cette séquence est très utilisée par
                         ; les programmeurs pour les routines à deux
                         ; fonctions. une fois assemblée cela donne :

                         ;  LECTURE      CLC
                         ;               BIT $38
                         ; si on JMP en Lecture la retenue se mettra a 0
                         ; et restera a 0 car le BIT ne modifie pas la
                         ; retenue
                         ; Resumé : LECTURE  RETENUE A 0
                         ;          ECRITURE RETENUE A 1

           JSR FIXPARMS  ; sauve Acc, X-reg , Y-reg dans des cases mem.
                         ; (la retenue n'est pas modifiee!)

           STA H6227+2   ; ces trois STA positionnent les buffers de la
           STA H623D+2   ; lecture.
           STA H6251+2   ;

           ROR FLAG_READ_WRI

   ; le ROR est une rotation sur 9 bits c-a-d que
   ; la retenue pas dans l'octet par le bit de
   ; fort ( bit de gauche ou bit de signe! ).
   ; LECTURE  : FLAG_READ_WRITE POSITIF (= #$00 )
   ; ECRITURE : FLAG_READ_WRITE NEGATIF (= #$80 )

TRYAGAIN   LDA #$03
           STA H627C
           SEI           ; inhibition des interruptions
           LDA HC0EE     ; prépare le mode lecture
           LDA HC0EC     ;
           LDA HC0E9     ; MOTOR ON !

           BIT FLAG_DRIVE ; si le drive était déjà allumé, saute la
           BMI DRIVON    ; boucle d'attente

           LDY #$07      ; boucle d'attente ( nécessaire quand on
H6411      JSR H63B6     ; allume le drive )
           DEY
           BNE H6411

DRIVON     LDA #$80      ; cette fois le drive est allumé
           STA FLAG_DRIVE ; on positionne le flag du drive

           BIT H601C ; positionne dans ASKFORDISK
           BPL H6435

           LDY #$F0      ; à mon humble avis ( ce qui n'est pas sur! )
H6423      LDA HC0EC     ; cette routine sert à déterminer si on peut
           BPL H6423     ; lire des nibbles
           INY           ; sert notamment quand on change de drive
           BNE H6423     ; pour savoir si il n'est pas ouvert ou
H642B      CMP HC0EC     ; si il existe bien !
           BNE H6435
           INY
           BNE H642B
           SEC           ; --->> Impossible de lire
           RTS

H6435      LDA PISTE     ; on va mettre la pioche sur la piste
           JSR SEEKABS   ; désirée

           BIT FLAG_READ_WRI ; est-on en mode lecture ?
           BPL NOWRIT    ; non (FLAG_READ_WRI POSITIF )

           LDA BUFFER    ; oui
           STA H6104+2   ; positionne les buffers pour le
           STA H6080+2   ; mode ECRITURE
           STA H609A+2
           STA H60AC+2
           JSR H60FB     ; routine de pre-nibblelization

NOWRIT     JSR HREADORWRITE
                         ; lit ou écrit un secteur (selon FLAG_READ_WRI)
                         ; cette routine ressort avec la carry à 1
                         ; si une erreur a été trouvée (erreur de volume
                         ; mauvaise lecture, etc.. )
           LDA H601C     ; Flag : doit on traiter l'erreur
           BMI H6465     ; par un " DRIVE ERROR : Make sure etc...?"
                         ; NON va directement au RTS

           BCS ERROR     ; OUI, on traite l'erreur si la retenue est a 1
                         ; on se branche sur la routine qui prend en
                         ; charge l'erreur
 H645C     LDA BUFFER    ; autrement tout est impeccable, on reprend les
           LDX PISTE     ; valeurs en x, y et A
           LDY SECTEUR
H6465      RTS           ; fin des emmerdes....

ERROR      LDY HC0EC
           JSR H086C
           JSR H085D
           LDA #$12
           STA $25       ; ROUTINES QUI ECRIVENT :
           LDA #$02      ; "DRIVE ERROR, make sure that the drive door
           STA $24       ; is closed and disk is in drive..."
           JSR H083F
           LDY #$00
           JSR H64FA
           JSR H0842
           INC H03EF
           JSR H086C
           JSR H645C     ; repèchent les valeurs pour
           JMP TRYAGAIN  ; faire un autre essai




A SUIVRE! FICHIER : TANGLED TALES (3)                                 LOOCKHEED


Retour sommaire

hr Crackware

Tangled Tales (3).




ASKFORDISK PHA           ; parms dans A Le no de volume de la diskette
           CLC           ; que l'on veut que l'utilisateur moyen insère.
           ADC #$36      ; on l'additionne avec 36 pour avoir
                         ; son équivalent dans le codage des lettres
                         ; ( référez vous au codage des textes ! )
                         ; en effet cela lui sert a mettre le No de
                         ; disk dans le message " Please Insert .. "
           STA H67E2     ; on le stocke juste après.

           JSR H6025     ; puis on va lire un secteur en $200 pour
                         ; mettre ainsi la pioche sur la piste 14
                         ; comme ca si on change de drive cela
                         ; évitera la recalibration !
           PLA
           STA VOLUME    ; on stocke le volume demande dans Le volume
  
           LDA #$80      ; initialisation de quelques drapeaux
           STA H601C     ; ( notamment pour les traitements des erreurs    
           STA H601B     ; la il ne veut pas qu'on affiche DRIVE ERROR
                         ; MAKE SURE etc...). il veut prendre lui meme en
                         ; charge les erreurs car il sait que la seule
                         ; qui peut venir est une erreur de volume

           JSR H086C     ; ?
           JMP H64CC
H64AA      JSR H085D     ; efface la window des textes
           LDA #$12      ; VTAB 18
           STA $25       ; (Position verticale du message)
           LDA #$02      ; HTAB 02
           STA $24       ; (Position horizontale du message)
           LDY #$42      ; affiche " PLEASE INSERT... "
           JSR H64FA
           LDA VOLUME    ; Si le volume demandé est le volume du disk
                         ; de boot alors on affiche "BOOT" au lieu de
           CMP #$3F      ; "ADVENTURER 1" (Zum Beispiel)
           BNE H64C3
           LDY #$67
H64C3      JSR H64FA
           INC H03EF
           JSR H086C     ; attend une touche
H64CC      JSR H6775     ; eteint le drive
           LDA #$02      ; p'tite boucle d'attente pour faire jolie...
           JSR H63B6
           LDX #$00      ; INIT DRIVE 1
           LDA H601B     ; si H601B est négatif on lit le DRIVE 1
           BMI DRIVEONE
           INX           ; sinon on incrémente X pour lire le drive 2
DRIVEONE   LDA HC0EA,X
           JSR H6025     ; on lit un secteur
           BCC H64F0     ; si c'est le volume recherche pas de probleme
           LDA H601B     ; dans l'autre cas on inverse le bit 7
           EOR #$80      ; (bit de signe) pour procéder à un
           STA H601B     ; changement de drive
           BMI H64AA     ; si c'était le drive 1 ( donc le dernier drive
                         ; testé était le drive 2 !) va afficher le
                         ; please insert etc...
           BPL H64CC     ; autrement va tester le drive 2
H64F0      LDX #$00      ; on remet quelques drapeaux
           STX H601C
           DEX
           STX H627B
           RTS           ; fin de la routine ASKFORDISK

* ---> routine principale "affiche le texte !"

H64FA      LDA H6783,Y   ; on peche une valeur de
           BMI H6505     ; A si elle est négative fin de la phrase
           JSR H0806     ; routine ki affiche une lettre
           INY           ; on incrémente Y
           BNE H64FA     ; on continue à afficher tant ke c'est pas égal
                         ; a zero
H6505      INY           ; on incrémente y pour "sauter" l'octet négatif
                         ; (comme ca on pourra continuer une autre phrase)
           RTS           ; fin


LCTURE18S  DEC FLAG_18OR16
           BIT FLAG_DRIVE
           BMI H6516
           JSR LECTURE
           INC FLAG_18OR16
           RTS

H6516      JSR FIXPARMS
           STA H6227+2
           STA H623D+2
           STA H6251+2
           CPX H6016
           BEQ H652B
           TXA
           JSR SEEKABS
H652B      JSR H6452
           INC FLAG_18OR16
           RTS
MINIDOS    STX $27       ; stocke le buffer_haut en $27
           LDY #$00      ; le _bas en $26
           STY $26
           CPX #$A0      ; bon ca je crois que quand x est égal
                         ; à #$A0 ou #$B0 il teste s'il ne l'avait
                         ; pas déjà chargé (comme ca il ne recharge
                         ; pas une image compressée kila déjà en mem!
           BEQ H6541
           INY
           CPX #$B0      ; ce n'est qu'une supposition...
           BNE H654A
H6541      CMP H6017,Y
           BNE H6547
           RTS
H6547      STA H6017,Y
H654A      STA $2D       ; on stocke le No de programme
           STA H6282
           JSR H671F
           BCS H65AB     ; le programme se branche tjrs en H65AB...
           LDY #$18
H6556      LDA H674A,Y
           STA STACK,Y
           DEY
           BPL H6556
           STY $2F
           JSR H66F7
           LDA #$B0
           STA $27
           LDX #$02
H656A      LDA $2D
           CMP HFE00,X
           BNE H659C
           INC $2F
           JSR H675B
           STA H0107
           CMP #$D0
           BCC H6594
           STA H674F+2
           LDA $27
           STA AUXZP
           STA $27
           LDA #$00
           STA $26
           JSR H674D
           STA MAINZP
           JMP H6597
H6594      JSR STACK
H6597      BIT HC083
           INC $27
H659C      INX
           BNE H656A
           JSR H66F7
           LDA #$F1
           STA $27
           LDA $2F
           BMI H65AB
           RTS
H65AB      LDA VOLUME    ; on sauve le volume
           STA H6678+1   ; pour pouvoir le comparer a la fin de l'appel
           LDA $2D ;
           BPL H65C0     ; si A est négatif pas de pbm
           AND #$7F      ; autrement le programme est situe sur le disk
           STA $2D       ; de boot
           LDA #$3F      ;
           JSR ASKFORDISK
                         ; va demander le disk de boot
           LDA $2D       ; on reloade A avec le nouveau prgr
H65C0      ASL           ; on le multiplie
           ADC $2D       ; par
           STA $2D       ; TROIS


           LDX H6015     ; si la piste catalogue est tjrs la meme
           CPX H627B     ; alors c'est pas la peine de la recharger
           BEQ H65D7     ;
           STX H627B     ; autrement on la stocke dans H627B ( comme ca
                         ; au prochain appel on aura pas besoin de la
                         ; charger )


           LDY #$00      ; à noter que le catalogue est toujours sur le
                         ; secteur 0 et, en pratique il est soit sur la
                         ; piste 0 soit sur la piste $15
           LDA #$04      ; et se loge en $400
           JSR LCTURE18S ; go read catalogue

H65D7      LDY $2D       ; voila on reprend le No de prgrm
                         ; (prealablement *3)

           LDX H0400,Y   ; premier octet : contient la piste du
                         ; debut où se trouve le prgr

           LDA H0402,Y   ; 3ème octet : contient le buffer bas
           PHA           ; où COMMENCE le prgr on l'empile

           LDA H0403,Y   ; 4ème octet : contient la PISTE où le prgr
           STA $2F       ; se finit, on la sauve en $2F

           LDA H0404,Y   ; 5ème octet : contient le SECTEUR où le prgr
           STA $2D       ; se finit, on le sauve en $2D

           LDA H0405,Y   ; 6ème octet : contient Le BUFFER_BAS où se
           STA $2E       ; TERMINE prgr

           LDA H0401,Y   ; 2ème octet : contient le SECTEUR
           TAY           ; où commence le prgr
           LDA #$05      ; ce premier secteur est chargé en $500
           JSR LCTURE18S ; (buffer provisoire de ce dos)
                         ; on va le lire
           LDY #$00
           PLA           ; on dépile A (qui contient alors
                         ; l'adresse basse du buffer ou le prgr commence)
           TAX           ; transfert dans un registre index pour faire
                         ; une boucle
H65FC      LDA H0500,X   ; on transfert la partie qui nous intéresse
           STA ($26),Y   ; dans le buffer définitif
           INY
           BNE H6606
           INC $27
H6606      INX
           BNE H65FC     ; fin de la boucle ?
           STY $26       ; on sauve Y dans le buffer pour continuer la boucle
           JSR H645C     ; on pèche les valeurs du dernier secteur loadé
           CPY $2D       ; est-ce le dernier secteur du prgr ?
           BNE PASENCORE ;
           CPX $2F       ; est-ce la dernière piste du prgr ?
           BNE PASENCORE ;
           LDY #$00      ; là c'est le dernier secteur du prgr
           BEQ JETZT     ; on met 0 dans Y et on se branche en H666C
PASENCORE  LDA $26       ; on continue à charger avec le meme
           STA H6227+1   ; buffer bas
           STA H623D+1
           STA H6251+1
           LDA $27       ; on met dans A Le buffer
H6627      INY           ; on incrémente le secteur
           CPY #$12      ; est il égal à 12 ?
           BNE H6635     ; non va en H6635
           LDY #$00      ; oui alors cela signifie qu'il faut
           INX           ; changer de piste et mettre à 0 le secteur
           CPX #$23      ; si X est inférieur
           BCC H6635     ; à $23 no pbm
           LDX #$0F      ; sinon PISTE #$0F
H6635      CPY $2D       ; a-t-on atteint le dernier secteur du prgr ?
           BNE H663D     ; non alors allons lire
           CPX $2F       ; a-t-on atteint la derniere piste du prgr ?
           BEQ H6645     ; oui va en H6634 !
H663D      JSR LCTURE18S ; autrement on lit...
           CLC           ; on augmente les buffers
           ADC #$01      ; de 1
           BNE H6627     ; et c'est reparti pour une nouvelle lecture !
H6645      STA $27       ; sauve le dernier buffer
           LDA #$00      ; REMET A 0 LES BUFFER_BAS DU LECTEUR
           STA H6227+1   ; POUR POUVOIR LIRE EN $500
           STA H623D+1
           STA H6251+1
           LDA #$05      ; BUFFER_HI
           JSR LCTURE18S ; ET pof on va lire le dernier secteur
           LDY #$00
           LDX #$00
H665B      CPX $2E       ; on transfert la partie intéressante
           BEQ JETZT     ; dans le buffer definitif
           LDA H0500,X
           STA ($26),Y
           INY
           BNE H6669
           INC $27
H6669      INX
           BNE H665B
JETZT      TYA           ; fin de la boucle...
           CLC           ; après ce n'est que littérature....
           ADC $26
           LDA $27
           ADC #$00
           SEC
           SBC #$F0
           PHA
H6678      LDA #$00
           CMP VOLUME
           BEQ H6682
           JSR ASKFORDISK
H6682      JSR H671F
           PLA
           BCS H669C
           STA $2F
           STA $2E
           LDY #$02
H668E      LDA HFE00,Y
           CMP #$FF
           BNE H6699
           DEC $2E
           BEQ H669D
           H6699 INY
           BNE H668E
H669C      RTS
H669D      JSR H66F7
           LDX #$02
H66A2      LDA HFE00,X
           CMP #$FF
           BNE H66F4
           LDA H6282
           STA HFE00,X
           JSR H675B
           STA H66CA+2
           STA H66DE+2
           STA H66E1+2
           STA AUXZP
           CMP #$D0
           BCS H66C5
           STA AUXWRT
H66C5      LDY #$00
H66C7      LDA HB000,Y
H66CA      STA H1000,Y
           INY
           BNE H66C7
           STA MAINZP
           STA MAINWRT
           CPX #$20
           BCC H66E7
           CPX #$60
           BCS H66E7
H66DE      LDA H1000,Y
H66E1      STA H1000,Y
           INY
           BNE H66DE
H66E7      BIT HC083
           BIT HC083
           INC H66C7+2
           DEC $2F
           BEQ H66F7
H66F4      INX
           BNE H66A2
H66F7      LDY #$00
           LDA #$B0
           STA $27
           STA H66C7+2
           LDA #$F1
           STA $2C
           STY $26
           STY $2B
           LDX #$0C
H670A      LDA ($26),Y
           PHA
           LDA ($2B),Y
           STA ($26),Y
           PLA
           STA ($2B),Y
           INY
           BNE H670A
           INC $27
           INC $2C
           DEX
           BNE H670A
           RTS
H671F      LDA H67FD     ; doit-on lire dans les banks (not sure!) ?
           BEQ H6748
           LDX H6015
           CPX #$15
           BNE H6748
           BIT HC083
           BIT HC083
           LDX VOLUME
           CPX H601A
           BEQ H6746
           STX H601A
           LDX #$02
           LDA #$FF
H6740      STA HFE00,X
           INX
           BNE H6740
H6746      CLC
           RTS
H6748      SEC
           RTS
H674A      STA AUXREAD
H674D      LDY #$00
H674F      LDA H1000,Y
           STA ($26),Y
           INY
           BNE H674F
           STA MAINREAD
           RTS
H675B      TXA
           AND #$F0
           CMP #$C0
           BNE H676D
           TXA
           CLC
           ADC #$10
           BIT HC08B
           BIT HC08B
           RTS
H676D      TXA
           BIT HC083
           BIT HC083
           RTS
H6775      LDA #$00
           CMP FLAG_DRIVE
           BEQ H6782
           STA FLAG_DRIVE
           LDA HC0E8
H6782      RTS
H6783      HEX 04232D2500052C2C292C0046000D1B251F002D2F2C1F001E232D2500
           HEX 232D002328001E2C23301F001B281E001E2C23301F001E29292C0023
           HEX 2D001D26292D1F1E45FF10261F1B2D1F0023282D1F2C2E002E221F00
           HEX FF1B1E301F282E2F2C1F00  ; ça c'est "PLEASE INSERT...."
H67E2      HEX 00 ----> Là le numéro de volume !
           HEX 001E232D2545FF0229292E001E232D2545FF9D
H67F6      HEX 9D1003B9009E9D
H67FD      HEX 2003C8

LES LABELS....

STACK = $0100
H0107 = $0107
H0302 = $0302
H0320 = $0320
H03EF = $03EF
H0400 = $0400
H0401 = $0401
H0402 = $0402
H0403 = $0403
H0404 = $0404
H0405 = $0405
H047F = $047F
H0500 = $0500
H0504 = $0504
H0806 = $0806
H083F = $083F
H0842 = $0842
H085D = $085D
H086C = $086C
H1000 = $1000
H2000 = $2000
H2001 = $2001
H2002 = $2002
HB000 = $B000
MAINREAD = $C002
AUXREAD = $C003
MAINWRT = $C004
AUXWRT = $C005
MAINZP = $C008
AUXZP = $C009
HC01A = $C01A
PADDL0 = $C064
HC065 = $C065
PTRIG = $C070
HC083 = $C083
HC08B = $C08B
HC0E0 = $C0E0
HC0E8 = $C0E8
HC0E9 = $C0E9
HC0EA = $C0EA
HC0EC = $C0EC
HC0ED = $C0ED
HC0EE = $C0EE
HC0EF = $C0EF
HC700 = $C700
HFE00 = $FE00




THE END                                                               LOOCKHEED


Retour sommaire

hr Crackware

Technocop.


 _____________________________________________________________________________
!                                                                             !
! TECHNOCOP (C) 1988 Gray Matter              Cracked by LOOCKHEED -   / 5/89 !
!_____________________________________________File : THE JOKERSOFT_-_11/ 7/89_!



   Pour commencer, je tiens à remercier Copperfield pour son aide pour rédiger
ce fichier, pour Goldpom à qui nous devons cet original (!!!) et pas pour
Loockheed qui m'a dit c'est juste une histoire de désynchro de plus...

   Alors, il faut que je vous dise quelque chose : c'est de la protection Made
In Epyx! Cela a beau sortir des ateliers Gray Matter (Chris Gray étant auteur
d'nfiltrator 1 et 2!, mais ici le programmeur est Esteban Ahn), c'est quand
meme une désynchro avec 4 EOR.

   Pourtant une grande discussion a eu lieu entre les membres du BRAIN TRUST,
pour savoir le type de cette protection de cette boite inconnue??? Certains
membres (comme moi-meme) étaient surs que c'était la meme protection que Test
Drive car la boite qui avait fait la conversion était Distinctive Software,
comme Test Drive. En fait, Copperfield avait raison, (TechnoCopperfield!)
c'était une désynchro Epyx mais légèrement modifiée!

   L'original doit etre démuffinisé dans un premier temps.

   On analyse le Boot 1 de Technocop.
1/ mouve le Boot 1 en $200 (buffer clavier)
2/ initialise quelques valeurs (36-37-38-39-3E-3F et aussi 801:4C 3C 02)
3/ JSR $27F : charge le Boot 2 (où on trouvera la vérif.)
4/ prépare la bank $C083
5/ JMP $F700 => la vérif.!!!

   On récupère ce Boot 2 grace à la méthode habituelle et on trace :
*B700LLLLLLL
*F716:A9 80        LDA #$80
      85 FD        STA $FD
      C6 FD        DEC $FD
      F0 7A        BEQ $F798           ; se branche si égal à la rt de plantage
      20 A5 F7     JSR $F7A5           ; c'est Ok! suite de la lecture
      B0 75        BCS $F798           ; s'y rebranche si C=1
 F723:la suite arrive!

*F798:C6 FC        DEC $FC
      F0 03        BEQ $F79F           ; plus d'essai => c'est Ok!
      4C 16 F7     JMP $F716           ; se rebranche à l'infini => plantage!
 F79F:EE F4 03     INC $03F4           ; ça plante!
      6C FC FF     JMP $(FFFC)         ;
 FCA5:routine de lecture des headers normaux (D5 AA 96 etc...), càd la sortie
      de la vérif.

*F723:la suite est arrivée!
      CMP #$E7
      BNE
      ...
      CMP #$E7
      BNE
      ...
      CMP #$E7
      BNE
      ...
      CMP #$EE
      BNE
      ...
Il cherche donc 4 valeurs de désynchro sinon il se rebranche plus haut et
boucle à l'infini, il faudra donc déjà NOPer le BNE à chaque fois.
Puis il arrive à sa rout. de mover qui lui permet d'avoir les bonnes valeurs
des désynchros qu'il peche dans l'original, et comme notre copie ne possède
plus ces marquages, il faut lui faire comprendre qu'elle les a (elle doit avoir
*F0:FC EE EE FC). Alors ajoutons tout betement la rout. classique :
A9 FC 85 F0 85 F3 A9 EE 85 F1 85 F2

   Et c'est tout, ça devrait booté!

   On recherche la rout. $B700 sur le disk, elle est en P$0/C.

   Il faut donc modifier les octets suivant sur le disk :
P$0/C.43:EA EA -
      4C:EA EA  !_> NOPage des BNE
      55:EA EA  !
      68:EA EA -
      6A:A9 FC 85 F0 85 F3 A9 EE 85 F1 85 F2 -> implantation des valeurs de
                                                désynchro en page zéro
      76:EA EA EA EA -> pour qu'il lise la suite du prog. normalement



   Et maintenant, un petit fix rapido, car il y aurait beaucoup de choses à
fixer :
Pour le nombre de vies que l'on voit apparaitre sur le bras dans la deuxième
étape :
Face 1, P$0/E.1B : nbr (was 05)



_TECHNOCOP_______________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Tetris.


 _____________________________________________________________________________
!                                                                             !
! TETRIS (C) 1989 Spectrum Holobyte           Cracked by LOOCKHEED -   / 4/89 !
!______________________________________________File_:_TJS_/_Update_:_15/ 9/89_!



   Et voici un nouveau fichier du Jokersoft, un de plus dans ce Crack-Ware,
qu'il est bo, oh! qu'il est boooo (le Crack-Ware et le TJS aussi!).

   Ce soft est plombé à l'aide d'une protection format, mais aucune protection
mémoire. La protection format est la plus chiante que l'on ait rencontré ces
derniers mois, c'est en effet du 18 secteurs par pistes. On s'en est douté tout
de suite car sur la page text 40 col. de présentation de Tetris, il y avait
marqué SPECIAL THANKS TO : ROLAND GUSTAFSSON, plombeur numéro 1 de chez
Broderbund, auteur du RDOS S.S.I et du 18 secteurs par pistes (on ne peut pas
faire mieux, nous explique, JPL dans son bouquin : "Systèmes d'exploitation et
systèmes de protections sur Apple 2" page 331). Alors il fallait convertir donc
ce 18 secteurs en 16.

   C'est LOOCKHEED qui s'est chargé de cela, car il adore toutes les
protections 18 secteurs (The Last Ninja, Tangled Tales, etc...). Et il l'a
réalisé en le temps record d'une nuit...

   Je vous donne le format 18 secteurs de Tetris :
- un champ adresse    : prologue D5 9D
                        piste + secteur + checksum
                        epilogue AA
- 2 nibbles self-sync : FF FF
- un champ données    : prologue A4 (valeur différente selon les 18 secteurs.)
                        données $400 nibbles
                        checksum
                        epilogue D4

   Rem : c'était le meme format pour Airheart et The Last Ninja.

   Pour convertir l'original (copiable au Brainsmith 3.0!), il suffit de
bootracer le soft dans son intégralité, ne vous inquiétez pas, il n'est pas
très long, de récupérer toute la mémoire sous forme de fichier binaire et de
réorganiser le disk en 16 secteurs. Le plus simple est le moyen utilisé par
LCKD et qui consiste à utiliser l'Accolade Boot, c'est-à-dire qu'il charge ses
pistes dans l'ordre décroissant et ses secteurs dans l'ordre décroissant grace
à des buffers décroissants...

   Dans votre boot 1 (Acco_Boot), vous entrez la routine suivante :

          LDA #$10       ; buffer de fin de chargement (décroissant)
          STA $27
          LDA #$00       ; piste de fin (décroissante)
          LDX #$01       ; secteur de fin (décroissant)
          LDY #$01       ; nbr de secteurs à charger (croissant)
          JSR $08CD      ; => charge RT.LAUNCHER
          LDA #$BF
          STA $27
          LDA #$00
          LDX #$0F
          LDY #$02
          JSR $08CD      ; => charge RT.GRAPHIK DECOMP
          JMP $1000      ; éxécute RT.LAUNCHER

   Ainsi vous programmerez une petite routine (RT.LAUNCHER) de ce type :

 ORG $1000

          LDA #$95
          STA $27
          LDA #$04
          LDX #$05
          LDY #$36
          JSR $08CD      ; go 1 to Acco_Boot
          LDA $0478      ; case mémoire de la piste courante
          STA PISTE+1    ; cf. listing ORG $BE00
          BIT $C08B      ; BANK 1
          BIT $C08B      ;
          LDA #$DF
          STA $27
          LDA #$12
          LDX #$01
          LDY #$09
          JSR $08CD      ; go 2 to Acco_Boot
          LDA #$CF       ; routine de recalibration
          STA $27        ; (cf. plus bas!)
          LDA #$00       ;
          LDX #$00       ;
          LDY #$01       ;
          JSR $08CD      ; go 3 to Acco_Boot
          BIT $C081      ; go out of the bank
          JMP $6000      ; suite du chargement

   Rem : Il va de soit que les valeurs des pistes et secteurs sont propres à la
version réalisée par LCKD.

   Si vous avez bien respecté l'ordre des secteurs dans votre chargement, cela
doit coller impec'. Mais là vous avez eu 2 problèmes :

  Premièrement, lors d'un accès disk (ex : chargement d'une image pendant le
jeu), et bien, la tete de lecture bouge et on ne sait pas trop où est se
trouve. Pour cela, utilisez votre Acco_Boot (toujours en mémoire!) pour
recalibrer votre tete de lecture (c'est pour plus de sécurité!) :

          JSR RECAL
          ...

RECAL     LDA #$CF       ; buffer inutilisé
          STA $27
          LDA #$00       ; P$00
          LDX #$00       ; S$00
          LDY #$01       ; pendant 1 secteur
          JSR $08CD      ; go to Acco_Boot
          BIT $C0E8      ; arret du drive
          RTS            ; retour à l'appelant

   Deuxièmement, c'est le problème de la sauvegarde des scores (problème que
n'a pas résolu ACS dans sa version Tetris DHGR 16 secteurs!!!). Il vous suffit
de charger une RTWS 3.3 et d'y accèder lors de la demande de votre pseudo en
cas de high-scores et de sauver dès le CR, juste avant la demande PLAY AGAIN?
(Y/N). Ainsi vous aurez votre pseudo dans le TOP TEN COMRADES (sur la version
TBT, la table se trouve P$03,S$09, les scores étant affichés à l'envers et en
décimal).

   Et comme je suis très gentil, je vous file la routine (toujours utilisant
l'Acco_Boot (que ferait-on sans lui?)) qui permet de charger une image pendant
le jeu :

 ORG $BE00

          BIT $C0E9      ; allume dirve
          LDA TABLE1,Y   ; table du nbr de secteurs à charger
          STA NBR+1
          CLC
          ADC #$9F
          STA $27
          LDA TABLE2,Y    ; table du numéro des pistes
          STA PISTE+1
          LDA TABLE3,Y    ; table du numéro des secteurs
          STA SECTEUR+1
PISTE     LDA #$00
SECTEUR   LDX #$00
NBR       LDY #$00
          JSR $08CD      ; go to Acco_Boot
          LDA #$40       ; page HGR2
          STA $E6
          JSR $BF00      ; go to graphik decomp
          LDA #$CF       ; routine de recalibration à mettre ici!
          STA $27        ; (cf. plus haut!)
          LDA #$00       ;
          LDX #$01       ;
          LDY #$01       ;
          JSR $08CD      ; Acco_Boot for ever!

   Rem : valeurs propres à la version réalisée par LCKD.

* table du nbr de secteurs à charger :
TABLE1    HEX 110F10110F0E12110E1014120D

* table du numéro des pistes :
TABLE2    HEX 07060707060709070608080402

* table du numéro des secteurs :
TABLE3    HEX 11100F0E0D0C0B0A0908070605


   La version TBT va de la piste $00 à $12, ce qui nous laissait presque une
demi-diskette pour la signer, c'est pour cela j'ai fait une longue présentation
(104 secteurs) pas compressée, mais codée par EOR #$. Aussi si vous voulez la
shunter, je vous file le truc car je suis vraiment super cool : à l'aide d'un
éditeur de secteurs (tel Diskfixer), lisez la P$13,S$0C, et décodez la (EOR
#$24 (option X sur Diskfixer)), puis écrivez ce secteur en P$00,S$00 => Boot 1.


   On aurait aussi pu faire la version Tetris DHGR 16 secteurs mais notre
original (fourni par Mister Z) buggait, alors pas de chance c'est ACS qu'il
la fait... D'ailleurs on peut remarquer que leur version ne sauve pas les
scores, et que leur signature fait 27 octets et la notre 104 secteurs; c'est
sur, ils ont mieux à faire sur GS!!!



   Maintenant, je vous file un fix made by moi (TJS), et qui ne sert vraiment à
rien (comme beaucoup de fixx!) : Comment ne pas augmenter de niveau?

   Première façon (à l'aide la touche I) : P$2/C.F2 : 09 => 00
00EA:     CMP #$49       ; vérifie l'appui de la touche I (pour "increase"!)
          BNE $0145      ; si rien va en $0145
          LDA $787E      ; charge la case mémoire du niveau
          CMP #$09       ; la compare à 9 (dernier niveau)
          BNE $00F8      ; si moins de 9, va en $00F8
          JMP $7E21      ; continue normalement
00F8:     INC $787E      ; incrémente de 1 le niveau et continue
 
   Deuxième façon (pendant la progression normale du jeu) : P$3/0.A1 : 09 => 00
009D:     LDA $787E      ; charge la case mémoire du niveau
          CMP #$09       ; la compare à 9
          BEQ $00BF      ; se branche si égal à 9



   Maintenant je me permet de dévier un peu le but des fichiers de Crack-Ware :
plus de crack, ni de fix, un peu de bla-bla! A mon grand avis, Tetris fait
partie des must des jeux sur Apple 2 au meme titre que Lode Runner, Karateka,
Black Magic ou Airheart... Je suis passionné par ce jeu, et je ne suis pas le
seul, c'est pourtant étrange car je ne joue JAMAIS à aucun jeu sur Apple 2.
   Au début où est arrivé Tetris, c'était des grands combats avec Oliver Twist,
puis Loockheed si est mis, enfin ce fut mon pote commodoriste The Thitan, puis
mon frère PJC, et malheureusement mon père s'accapara de mon Apple pour y jouer
jusqu'à 1 heure par jour et régulièrement, c'était la joie dans la maison TJS!
   Parallèlement, Copperfield me disait que sa mère et sa soeur y jouait aussi
régulièrement et que sa soeur TB faisait de gros progrès. Puis parlant à Auror
de ce jeu, il m'affirmait qu'il dépassait aussi les 100 lignes (sur sa
version ST) et qu'il y jouait avec sa copine CF.
   A ma grande satisfaction et fierté, je fut le premier de toutes les
personnes citées au-dessus à dépasser les 10.000 points, et d'ailleurs encore
aujourd'hui personne ne les dépasse.
   J'en suis arrivé à 12.720 points, c'est-à-dire 170 lignes (score très
honorable, je pense!).
   Pendant mes vacances avec Copperfield en Espagne, nous sommes allé souvent
dans les salles de jeux, et j'ai trouvé Tetris (version Coin-Op), version
différente, par étape, très bien désignée, musicale, et beaucoup plus dure. Et
surtout la possibilité de jouer à deux joueurs, simultanément... Ce fut donc
des grands combats avec la soeur de Copperfield, combats qui atteignaient des
proportions gigantesques et massaient des admirateurs derrière nous. J'avoue,
pour une fois, avoir trouvé une personne à ma hauteur à Tetris. En regardant
les autres joueurs au gré des jours, personne ne me dépassait : 111.000 points,
121 lignes, 11ème niveau avec seulement une pièce de 25 pesetas...
   Je recherche toujours des honorables joueurs à Tetris, mais mes recherches
sont vaines, dommage... 7 mois après, je suis toujours envouté par ce jeu...
   Et maintenant, je vous explique ce qu'est un tétris (en soviétique) car ce
n'est pas marqué dans la version Apple 2 : c'est tout simplement lorsque vous
arrivez à faire 4 lignes avec l'ajout d'une seule pièce : une barre, dans un
bloc de pièces bien homogène...

                        Bon alors, t'es triste! (jeu de mots)...



_TETRIS__________________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Test Drive.


_______________________________________________________________________________

 TEST DRIVE  (C) ACCOLADE  -=-  Fichier par Copperfield from The Brain Trust
                                protection : pistes LARGES !!!

                                                     exclusivité CRACK-WARE !!!
_______________________________________________________________________________


 Intro : GDF n'a pas réussi et nous non plus à l'époque => donné ACS
         Pour Crack-Ware, on a réessayé ...
         thanx to Mister Z

 Test Drive fut un logiciel acheté par The Jokersoft, au tout début du BRAIN
TRUST. Débutant comme entité de déplombage, Loockheed et The Jokersoft en
essayant de le déplomber furent mis en échec. (moi j'étais en vacances en
Espagne ! Mais ça n'aurait rien changé car à l'époque nous n'étions pas en
mesure de le faire).
 Ils décidèrent donc de le donner à Godfather pour que LUI, le déplombe.
Seulement voilà, gdf après quelques jours passés dessus, s'avoua vaincu,
autrement dit : l'échec. Cependant que nous n'y arrivames pas encore ne fut pas
trop honteux, mais que gdf, qui criait partout etre le plus grand déplombeur
de la galaxie échoue, alors là ça fait mal...
 La mort dans l'ame, gdf donna ce soft finalement aux gars d'ACS (qui font
un carton actuellement sur GS...) Il fallut 3 jours au Gog's pour le déplomber.
Mister Z, un autre déplombeur (Suisse), qui s'illustre aussi par son talent,
mit une bonne journée.
 C'est la raison pour laquelle la recette du déplombage de ce jeu ne fut pas
expliquée dans déplombage mode d'emploi 9 (qu'il est pas bo...).
 Ne voulant pas rester devant un échec qui faisait tache noire à notre palmarès
et pour que vous sachiez tous comment le déplomber alors que gdf ne sait
toujours pas, je me suis procuré un original de Test Drive et je me suis mis à
son déplombage.
 Résultat : commencé à 0h fini à 3h.
 Sachez que je dois faire une nuit blanche pour vous expliquer comment j'ai
fait, et qui de plus est en restant clair...(dire que j'ai cours aujourd'hui !)
 
              =-------------------------------------------=
              !                                           !
              ! Le déplombage de TEST DRIVE (C) Accolade. !
              !                                           !
              !              (K) Copperfield              !
              !                                           !
              =-------------------------------------------=

 Désolé pour la méthode un peu résumé mais je suis à la bourre...

 Les initiés ne peuvent lire que les trois premières lignes et passer à la
suite (la ou on a des tirets...). Grands néophytes (pas trop quand meme !)
ce qui suit est pour vous !

 Le disque est en Dos Patched, c'est à dire que les trailers de fin de champs
de données et d'adresses ont été modifiés, et ne sont pas vérifiés dans ce
logiciel.
 (Ces fins de champs ne sont pas les meme que ceux du format normal.)
 Les plombeurs ont dit en fait à la RWTS de l'original: "hép vieux !, t'as pas
besoin de vérifier les entetes de fins de champ, vu que tu sais où sont leurs
débuts".
 Cependant, quand vous en faites une copie au LFB (Locksmith Fast Backup),
celui-ci n'arrive pas à lire la disquette tout simplement parce que lui vérifie
les fins de champ (pour une question de fiabilité). Si vous voulez copier une
disquette en Dos Patched, prenez Disk Muncher.
 Bon pour remettre cette disquette au format normal il suffit de la lire sans
vérifier les fins de champ et d'écrire ce que l'on a lu en mettant les trailers
standarts du format du DOS. Il existe un programme qui est courament utilisé
pour ce type d'opérations, appelé Advanced Demuffin (en référence au Muffin ou
Demuffin du DOS qui servait à transférer les disques en 13 secteurs en 16
secteurs par pistes). Pour utiliser ce programme c'est simple : formattez un
disque avec l'option servant à cet effet, puis prenez l'option "quit to
assembler" (Q), ceci étant fait tapez B942:18. Pour ne pas trop rentrer dans
les détails (because faute temps), je vous dirai que cela sert à dire à notre
RWTS: "hé vieux ! T'as pas besion de vérifier...".
 Puis tapper <CTRL-Y> pour revenir au programme. Prendre l'option no.1 et
suivre les instructions.

 Passons maintenant au boot tracing de ce programme, voici ce que cela donne :
 Le Boot 1 : - Se move en $200

 - Inits sortie clavier

 - Met en $801 le JMP $23C

 - Technique de l'Acco_Boot (saut en $C65C avec en ($26) l'adresse du buffer et
en ($3D) le secteur LOGIQUE à charger).

 - JSR $027F: Charge 8 secteurs (nombre en $265); les prend dans la table
située en $2C3 indexée en Y (valeur de Y prise en $25F) le numéro de secteur et
le charge dans le buffer d'adresse haute située en $263 (valeur mise en $27).
 On charge donc :  P$00 S$E logique soit S$8 physique, en $FF00
                   P$00 S$1     "    "   S$7     "     en $FE00
                   P$00 S$3     "    "   S$6     "     en $FD00
                   P$00 S$5     "    "   S$5     "     en $FC00
                   P$00 S$7     "    "   S$4     "     en $FB00
                   P$00 S$9     "    "   S$3     "     en $FA00
                   P$00 S$B     "    "   S$2     "     en $F900
                   P$00 S$D     "    "   S$1     "     en $F800
 - $83F: revectorise la banque, la commute et saute en $F800. Si on veut voir
ce qu'il y a en $F800 on est obligé de faire un petit mover, car cette partie
est effacée par la ROM de l'Apple chaque fois qu'il nous rend la main (cf
fichier de Loockheed sur Neuromancer) sur la nécessité de faire 1 mover et
impossibilité d'utiliser rt. en ROM (ex.: JMP $FF59) car $E000 à $FFFF (ROM)
nicked (dont $F800 à $FFFF utilisé). Donc pour voir ce qui a été mis en RAM
soit voir direct sur disk (cf. tbl donnée ci-dessus) ou faire 1 tracer fou :

              1600<C600.C6F8M N 16F8:A9 17 8D 59 08 4C 01 08

              et en $1700 mettre ce petit prg :
 (pour ceux qui ont un mini-assembleur)

  1700: 2C 83 C0     BIT $C083
  1703: 2C 83 C0     BIT $C083
  1706: A2 00        LDX #$00
  1708: BD 00 F8     LDA $F800,X
  170B: 9D 00 28     STA $2800,X
  170E: E8           INX
  170F: D0 F7        BNE $1708
  1711: EE 0A 17     INC $170A
  1714: EE 0D 17     INC $170D
  1717: AD 0A 17     LDA $170A
  171A: D0 EA        BNE $1706
  171C: 2C 81 C0     BIT $C081
  171F: 60           RTS
(expliquance du prg...cf. fichier Neuromancer !!!)
soit directement en moniteur :
 1700: 2C 83 C0 2C 83 C0 A2 00 BD 00 F8 9D 00 28 E8 D0 F7 EE 0A 17 EE 0D 17
       AD 0A 17 D0 EA 2C 81 C0 60

 Et on lance notre traceur ! : 1600G

 Une fois que l'on retrouve la main, tout ce qui aurait du etre de $F800 à
$FFFF, se trouve situé de $2800 à $2FFF.

 On trace le programme en assembleur, cela nous donne ceci :
(pour plus d'informations regardez vous-meme !)

$F800 -> $F85B -> $F88C -> $F8C8 -> $F817 -> $F858: JMP $D000

 Et bien que cela ne tienne on continnue le tracing du soft...
 On veut maintenant court-circuiter le JMP $D000, pour cela on modifie notre
traceur...

 
  1700: A9 83 C0        LDA $C083
  1703: A9 83 C0        LDA $C083
  1706: A9 14           LDA #$14
  1708: 8D 59 F8        STA $F859
  170B: A9 17           LDA #$17
  170D: 8D 5A F8        STA $F858
  1710: 4C 00 F8        JMP $F800
  1713: EA              NOP
  1714: 4C 59 FF        JMP $FF59

 (Si vous etes malgré tout en mode graphique ou 80 colonnes, faites :
3F2:59 FF 5A (on vectorise le reset) Puis <CTRL-RESET>)

(*1) Pour pouvoir voir ce qu'il y a en carte language (à partir de $D000),
faire :
 C081 C081 F000<F000.FFFFM C08B C08B (cf fichier Neuromancer)
 En regardant un peu ce qu'il y a à partir de $D000 on voit un JSR en $EEDC
retenez cette adresse, c'est celle de la routine qui va décoder la protection!
 Cette routine est en source sur la face 3 du monument qu'est Crack-Ware.
 NOTE : la routine de décodage se sert de clés de décodage situées en $1F10.

 Le programme va charger quelque chose à partir de $7F00, en mémoire
auxiliaire, juste un peu avant d'exécuter le programme. Donc débrouillez-vous
pour bloquer le programme juste avant qu'il fasse son saut en $EEDC (j'ai bien
dit : juste avant !). (faites-le soit en modifiant le traceur à votre guise ou
soit en  modifiant directement sur le disque (ce qu'il y a en $D000 se trouve
sur la piste 1 secteur 0).

 Maintenant que nous avons bien interrompu le programme juste avant le
JSR $EEDC. Maintenant nous allons bouger la protection qui est en mémoire
auxiliaire, pour bouger de la mémoire auxiliaire vers la principale, faire :
3F8: 18 4C 11 C3 puis 7F00<7F00.BFFE <CTRL-Y> (cf. moves dans Neuromancer).
 Notez les 10 premiers octets codés (cela nous sera utile plus tard pour les
scanner sur disque...) vous devez avoir :
7F00: AC 04 0B 24 6E 39 CF 9F 71 07
 Lançons alors le programme décodeur (en ayant bien pris la peine de commuter
la carte language (cf *1)

 Regardons maintenant ce que nous avons en $7F00...

 Toutes les opérations faites sur la valeur en adresse $201 sont faites de
sorte qu'à la fin on ait : $201:00 original
                           $201:FF copie
...     ........        .........
7F52-   AD D9 82        LDA $82D9  )
7F55-   49 77           EOR #$77   )-> A=$21 (piste $21)
7F57-   20 85 80        JSR $80D5   -> va en piste $21 (Seek-Abs)
7F5A-   AD D9 82        LDA $82D9  )
7F5D-   49 77           EOR #$77   )-> A=$21 (piste $21)
7F5F-   20 B5 80        JSR $80B5   => Avance d'1/4 de piste
7F62-   20 8D 80        JSR $808D   -> verifie les Adress Marks de tous les
                                       secteurs
7F65-   90 0B           BCC $7F72   -> C'est OK
7F67-   CE AD 82        DEC $82AD  )-> autre essai, décompte du compteur
                                   )   d'erreurs
7F6A-   AD AD 82        LDA $82AD  )
7F6D-   8D 01 02        STA $0201  )
7F70-   10 E0           PBL $7F52  )
7F72-   A9 07           LDA #$07   )-> lit un secteur
7F74-   8D AE 82        STA $82AE  )
7F77-   20 9C 7F        JSR $7F9C  )
7F7A-   CE AE 82        DEC $82AE  )-> lit un autre secteur
7F7D-   20 9C 7F        JSR $7F9C  )
7F80-   A9 FF           LDA #$FF
7F82-   20 F9 FF        JSR $7FF9   -> avance d'1/4 de piste
7F85-   CE AE 82        DEC 82AE
7F88-   10 ED           BPL $7F77   -> continue (le tout pris 4 fois)
....    ........        .........   -> Fin

 Le schéma de la protection est la suivante : la piste $21 est dite "large",
c'est à dire qu'elle s'étend entre la piste $21 et $22.
 Sa vérification se fait comme suit :
 - on va sur la piste $21
 - verifie les headers   )    ceci est
 - lit 2 secteurs        )    exécuté
 - avance de 1/4 de piste)    4 fois

 Il n'y a aucun de pronlème puisque les pistes :
 21, 21 1/4, 21 1/2, 21 3/4 et 22 sont identiques.
 De ce fait le but du déplombage est de le laisser lire les secteurs mais l'
empècher de déplacer la tete de lecture de 1/4 en 1/4 de piste !

 Donc pour le déplomber:
....    ........        ........
7F47-   A9 00           LDA #$00 )-> $201= 00
7F49-   8D 01 02        STA $201 )-> Good disk
7F4C-   EA              NOP
....    ........        ........ )-> on va quand meme aller jusqu'à la piste
                                     $21 (il faut qu'on lise les secteurs)
7F5F-   EA              NOP      )-> cependant on n'avance plus de 1/4 en 1/4
7F60-   EA              NOP      )-> de piste
7F61-   EA              NOP      )
7F62-   EA              NOP      )-> plus de vérification des secteurs
7F63-   EA              NOP      )
7F64-   18              CLC      )
....    ........        ........
7F82-   EA              NOP      )-> n'avance plus !
7F83-   EA              NOP      )
7F84-   EA              NOP      )

 Voila et là c'est déplombé...

 Il ne reste plus qu'à écrire tout ca sur disque (le plus dur ça a été de
tout comprendre !).
 Pour écrire sur disque, scanner les 10 1ers octets codés vous les trouverez
piste $6 secteur $6.

 Chargez Mobby Disk, avec l'option l'option charger un fichier <C> chargez le
source assemblé à l'adresse où vous l'avez assemblé. Puis chargez la piste $2
secteur $2, décodez le secteur chargé grace à la routine, faites vos
midifications comme indiqué ci dessus... Puis recodez tout ça en refaisant
un saut à la routine qui décode (elle marche dans les 2 sens (code-décode)).
En prenant bien soin de remettre les conteurs de ce qu'il faut coder aux
bonnes adresses. Puis une fois codée, réécrivez votre secteur déplombé !

 Je me doute bien que seuls les non néophytes arriverons au bout de ce crack,
meme avec mon expliquation !

 Soit directement sans se creuver : P$6/S$6:
octet $47: B4 01 88 08 0F FB
octet $5F: 31
octet $62: 11 E7 FB
 Je donne vraiment çà pour les fainéants qui savent se servir que d'un éditeur
de secteurs.



                        Test Drive, a file by Copperfield (6:49 am, Moi, Dodo!)


Retour sommaire

hr Crackware

The Last Ninja.


 _____________________________________________________________________________
!                                                                             !
! THE LAST NINJA (C) 1988 Activision                            THE JOKERSOFT !
!_____________________________________________________________________________!



   Je vous propose un nouveau petit fix pour The Last Ninja car vous ne lirez
pas de fichier sur le déplombage de ce soft car il s'agit d'une transcription
18 en 16 secteurs :

 - P$10/5.B2 : 03 -> 08 => 8 vies au max.
 - P$03/5.27 : C6 -> A5 => vies infinies (case mém. $EE)



_THE_LAST_NINJA__________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Thexder.


 _____________________________________________________________________________
!                                                                             !
! THEXDER (C) 1989 Sierra On-Line                               THE JOKERSOFT !
!_____________________________________________________________________________!



   Thexder est une importation d'Italie, et il n'était ni plombé, ni signé!
Mais voulant aller plus loin que d'apposer la griffe BRAIN TRUST sur un soft de
plus, Copperfield m'a poussé à faire un fixed game, et il n'avait pas tord,
m'affirma Loockheed. Alors ce fut fait la nuit meme, et la premiere version
qui fut copié fut une version fixint. Dans ce fichier, je vous donne les
paramètres de ce fix (attention! ces données (pistes, secteurs, octets) ne
fonctionnent que sur la version BRAIN TRUST car j'ai remanié tout le disk et
son catalog...) :

   Sur la version DHGR :
Il charge le fichier THEX1 (offset $2000, chargé en $1800)
P$9/2.10 : 01->00 (adr $490C) => décrément quand vous touchez certains sols!
P$9/3.AA : 01->00 (adr $48A6) => décrément quand vous touchez les ennemis!
P$9/B.D6 : 01->00 (adr $40D2) => décrément quand vous touchez certains murs!
En effet, à chaque fois, on trouve la sub-routine suivante :
:LDA $75
:SEC
:SBC #$01
:STA $75
Et pour ne pas perdre 10% d'énergie à chaque fois que vous prenez le shield
(button 1) :
P$8/D.D0 : 0A->00 (adr $4ECC)



   Mais voulant toujours aller plus loin dans ce must du jeu d'arcade sur
Apple 2, je découvris que, dans le programme de boot en basic de Thexder, il
analysait si vous disposiez de 64 ou 128 Ko en mémoire vive, et vous chargerez
la version correspond à votre machine. Alors c'est pour cela que j'ai rajouté
la question VERSION DHGR PLAYING (Y/N) ? uniquement à l'usage des possesseurs
de 128 Ko, car la version HGR est aussi superbe. Alors voici les paramètres
sur la version HGR :
Il charge le fichier THEX (offset $2000 chargé en $1800)
P$C/4.1E : 01->00 (adr $481A) => sols
P$C/5.B8 : 01->00 (adr $47B4) => ennemis
P$C/D.F1 : 01->00 (adr $3FED) => murs
P$B/F.5D : 0A->00 (adr $4D59) => shield



_THEXDER_________________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Tomahawk


 _____________________________________________________________________________
!                                                                             !
! TOMAHAWK (C) 1987 Datasoft/Intellicreations    (K) THE JOKERSOFT -   / 6/88 !
!_____________________________________________File : THE JOKERSOFT_-_26/ 2/89_!



   L'original de Tomahawk est copiable au Locksmith, mais la duplication plante
en écrivant : PLEASE USE ORIGINAL DISK, après avoir affiché la page texte puis
la page graphique de présentation. Boot traçons alors le soft :

]CALL-151
*1600<C600.C700M
*16F8:4C 59 FF
*1600G
*C0E8
*801L

   En $801, il JuMPe en $87E qui correspond à la routine suivante :

*87E:A2 79        LDX #$79       ; met $79 dans X
*880:BD 04 08     LDA $804,X     ; charge les octets à partir de $804
     48           PHA            ; empile A
     4A           LSR            ; décale le résultat à droite
     68           PLA            ; dépile A
     6A           ROR            ; rotation à droite
     9D 04 08     STA $804,X     ; stocke chaque octet à partir de $804
     CA           DEX            ; décrémente X (804 puis 805, 806, etc...)
     D0 F3        BNE $880       ; tant que cela n'a pas été fait $79 fois,
                                 retourne en $880.
     4C 14 08     JMP $814       ; saute en $814

   Ce qui correspond donc à une routine de décodage des $79 octets à partir de
$804 et qui finit par sauter en $814.

   Cette routine en $814 permettra de charger le boot 2 du programme et de le
décoder de la meme façon : *86D:PHA LSR PLA ROR

   Mais, Oh chose très intéressante, on s'aperçoit qu'à la fin de cette seconde
routine : $87B:JMP $43CB, allez vite on y va!!! : 43CBL

   En premier, il analyse si l'Apple dispose de 64 ou 128Ko de RAM, si cela ne
convient pas, il vous envoit en $45BA, et alors là vous avez une diskette
vierge en plus.

   En second, il va faire ce meme test une deuxième fois. Bon, mais passez ces
2 épreuves, il arrive en $43EB.

   En $43EB, il commence par vectoriser le reset sur $800,
             il JSR en $45A8 où il détruit la page HGR de façon invisible,
             il l'affiche, donc elle sera noire,
             il JSR en $4510 où il charge des données (X = numéro des pistes),
             il repasse en mode TEXT,
             il JSR en $4597, sans intéret,
             il JSR en $4458, allons analyser ce que l'on peut y trouver :

   En $4458, il compare le format de la diskette avec le format original de la
diskette master. Et on retrouve le format que l'on a sur tous les DataSoft (càd
Force 7 ou Alternate Reality : The Dungeon), on a donc :
CC (c'est là que ça cloche!) AA 96 stocké en $4595 puis
D5 DE AA EB stocké en $4596.

   Il faut donc tout simplement inhiber cette sub-routine qui analyse le format
de la diskette pirate, pour cela il faut mettre un RTS à son commencement càd.
en $4458!

   Mais voilà, maintenant que le tracing du boot et de la protection est fait,
il faut rechercher cette sub-routine sur le disk, mais Achtung, grosse malheur,
on a dit plus haut qu'elle était codée, et ce n'est pas un bete codage comme
un EOR, ou une rotation simple, ou un décalage simple de bits. Alors que faire
à part aller vider les poubelles car les éboueurs passent demain matin.
   "Ben, euh, je sais pas!", nous dit le petit Jean-Philippe,
   "IL FAUT...", nous répond Monsieur TJS de la ville des Toons,
   Il faut mettre un RTS en $4458 après avoir chargé et décodé le boot 2, mais
avant de sauter à ce boot 2, càd. dans le boot 1 de tout à l'heure. A la fin de
la routine du boot 1 qui a été décodée, on avait un JMP $43CB en $87B, ainsi on
écrit : *87B:A9 60 8D 58 44 4C CB 43
   On sauve ce boot 1 ainsi modifié en P$0/0, en ayant aussi mis : *801:4C 14 8
car on a plus besoin de décoder ce qui a déja été décodé et qui n'en a plus
besoin!!! Et, c'est fini...

   Maintenant si on regarde les équivalents ASCII des mnémoniques du boot 1
décodés de Tomahawk, on trouve dans la fin du boot 1, un booo source qui a
surement servi pour Tomahawk, Ah, ces programmeurs, ils laissent toujours
trainer leurs chaussures partout!!!

   De plus, on peut recupérer la page text et la page graphique de Tomahawk
qui se trouvent dans les premières pistes de la diskette (pistes croissantes
et secteurs décroissantes, je crois!).

   Encore, de plus, on peut facilement mettre Tomahawk en catalog, car il
charge en une fois aprés la présentation, et qu'il n'est pas très long (il ne
dépasse pas la moitié du disk!).



_TOMAHAWK________________________________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Victory Road.


 _____________________________________________________________________________
!                                                                             !
! VICTORY ROAD (C) 1988 Data East                   LOOCKHEED + THE JOKERSOFT !
!_____________________________________________________________________________!



   Victory Road est une importation du Canada, il était déjà déplombé par les
Coast To Coast (très célèbres crackers outre Atlantique). Alors nous vous
proposons son fix :

- P$1B/7.06 : 00 => level (C.M.$06)
- P$1B/7.0C : 04 => vies (C.M.$05)
- P$19/F.37 : C6 -> A5 => vies inf.


   Une version TBT's fixint circule sur le circuit appleiste national!



_VICTORY_ROAD________________________________________LOOCKHEED_+_THE_JOKERSOFT_


Retour sommaire

hr Crackware

The Games : Winter Edition.


 _____________________________________________________________________________
!                                                                             !
! THE GAMES : WINTER EDITION (C) 1988 Epyx     Cracked by LCKD+TJS - 17/ 1/89 !
!_____________________________________________File : THE JOKERSOFT_-_ 6/ 2/89_!



   Tu veux de la protection Epyx et bien en voilà. Nous sommes reparti pour
vous expliquer ce type de désynchro de pistes appliquée à The Games : Winter
Edition.

   Faire une copie demuffinisée de l'original.

   Appliquons la technique du boot-tracing.

   En analysant le boot 1, on trouve en $84A un JMP $BB00, listing où se
trouve la protection.

   On recupère les valeurs de désynchro par la méthode habituelle. On trouve
FC EE EE FC E7 EE FC E7.

   Puis on implante notre chère routine en $BB00 pour décoder tout ça (ici,
cela correspond à la piste $00, secteur $05, octet $00 :

   A2 07      LDX #$07
   BD 10 BB   LDA $BB10,Y
   95 F0      STA $F0,Y
   CA         DEX
   10 F8      BPL $0002
   4C 18 BB   JMP $BB18
   00 00
   FC EE EE FC E7 EE FC E7

   Et ça boot impec.



_THE_GAMES_:_WINTER_EDITION______________________________________THE_JOKERSOFT_


Retour sommaire

hr Crackware

Auto-interview d'Oliver Twist.


_______________________________________________________________________________

Auto-Interview Mégalomanesque de l'Oliver TWIST...   Hé oui...        12/9/89
_______________________________________________________________________________





        Hallo !!!



   C'est la sagesse du cours de Philo dans lequel je me trouve en ce moment qui
m'a mis sur la voie, m'a illuminé et m'a conforté dans l'idée que ce fichier
était indispenssable dans l'oeuvre que vous avez sous vos drives.
   En effet, vous avez eu le droit, dans Cool-Ware, à une interview de
l'immonde GDF (Erreur de notre part ??? Je m'en fous, je n'était pas encore au
Brain Trust...), puis, dans Cool-Ware //, à celles de Patchman et de Mister Z.
Donc, si on fait un peu le point en triant le contenu de ces trois fichiers, en
prenant en compte l'unique critère de sélection suivant :

  - L'utilité utilitaire,
  - Le niveau intellectuel des interviewés,
  - La beauté et la virilité de ceux-ci,
  - La sympathie de l'individu,
  - Son incorruptibilité,

il ne reste plus qu'une seule personne de valable; c'est notre petit Patchounet
à nous. Je ne vois absolument pas pourquoi un membre du Brain Trust ai eu le
droit à son interview et qu'il n'en soit rien pour MOI... Seulement voila, la
merde indéniable des interviews, c'est qu'on ne connait pas les questions (si,
en politique... mais bon... je ne tiens pas à me faire virer moi...).
  C'est pourquoi j'ai décidé de faire mon propre questionnaire, sans risque
pour MOI et permettant aussi d'étaler ma mégalomanie intense. Le JokerSoft
(LJS ???) a bien fait sa lettre ouverte, alors... Let's go : 


   -Nom, prénom, études, age et Q.I.?

        Nom : si !
        Prénom : Heu, Olivier, mais t'es con ou belge ???
        Etudes : Le moins possible... En ce moment je suis en T.D.
        Age : Qu'est ce que ça peut vous foutre ??? 18...
        Q.I. : 8192 * 10^5

   -C'est quoi ton role au sein du Brain Trust, fumier ?

     En fait, je préfère me classifier en plusieurs catégories :

        1) Glandeur : Je crois que je fais trés fort.
        2) Déconneur : Peut-etre un peu trop ??? Qu'est-ce que vous en pensez
                       les autres ?
        3) Programmeur : Présentations, boots, utiltaires...
        4) Déplombeur : Ah, quand meme ???
        5) Bombe sexuelle : Il faut bien l'avouer...
        6) Combleur de place dans nos productions : Voir fichier Cool-Ware //
                       (protections.), celui-ci et l'exclusivité Hard-Core ///.

   -Et c'est quoi qu'tu veux faire plus tard, crevure ?

        J'aimerais bien coupler l'informatique, l'électronique et la génétique.
Ce sont déjà mes trois passions mais qui ne m'intéresseraient qu'ensemble... Je
ne me vois pas bosser dans un seul de ces domaines... Et puis la modification
du patrimoine génétique s'apparente un peu aux déplombages et aux fixx...

   -Tu penses quoi de ton passage (Trop rapide) sur Apple // ?

        Ca fait trois ans et demi que j'ai mon //c... J'ai commencé
l'assembleur six mois après l'avoir acheté, puis, deux mois plus tard, je me
suis mis au déplombage... C'est, je l'avoue, un démmarage très rapide... Mais
je voulais un peu parler de mon apprentissage des bases du déplombage... C'est
grace aux cours de l'ignoble GDF que j'ai pu débuter dans le déplombage... Vous
allez me demander pourquoi je critique ces cours alors que ce sont eux qui
m'ont crée... (On n'exagère pas trop quand meme...) Bon, alors j'explicationne:
Vous connaissez tous la petite phrase préférée de l'infame ??? (Ouais, je met
l'infame, c'est un peu plus long à écrire mais je ne voudrais pas que son nom
figure trop dans ce fichier... Remarquez, on peut trouver un abréviation...
IFM, c'est trop classe pour lui, il faut trouver un truc bien beauf : NAM,
voila, ça c'est cooolll !!!)

Phrase de NAM : Un jour, vous deviendrez aussi grand que moi...

        Je trouve cette phrase tout à fait fausse si on considère l'image qu'il
se fait de lui meme, par contre si on considère la réalité, c'est en effet au
niveau de tout le monde d'arriver à son niveau... Enfin bref, Il disait aussi
qu'il était tout à fait possible de déplomber un soft sans connaitre
l'assembleur... Oui, on peut... Tout comme un plombier peut préparer une pense
de brebie farcie s'il a la recette sous les yeux... C'est à dire qu'en effet
ses élèves sont capables de déplomber le soft qu'il donne avec (donner ou
vendre ???) mais qu'il faut qu'ils s'accrochent à fond pour en déplomber un qui
aurait la meme sorte de protection, un tout petit peu modifiée... Non, pour
devenir un déplombeur, il faut déjà etre qualifié en assembleur et avoir la
logique de ce langage... Ces cours ne sont donc qu'utile pour un type qui va
chercher à tout comprendre en refaisant le déplombage du début jusqu'à la fin,
et pas simplement changer les trois octets que NAM lui a dit de changer... Une
preuve flagrant de leur innefficacité pour les types qui en connaisse peu,
c'est le déplombeur automatique des Epyx; meme si la protection n'a pas changé
depuis des décennies, il peut etre intéressant pour un débutant-déplombeur de
la  réétudier... Enfin bref, on a tous les cours de NAM au Brain Trust alors :

        Si vous en voulez sans vous ruiner, vous les aurez... Mais enfin bon...

        A part ça, ça me fout les glandes de partir maintenant... Je ne sais
pas si vous immaginez que je vais me galerer pendant tous mes cours de Philo
sans savoir quoi foutre... Chier... Non, mais je déconne plus là... Vous pouvez
pas savoir comment j'ai la haine... Que faire, acheter un //GS ??? Ca marche
pas en France; sauter sur le nouvel Atari STE et etre obliger de repartir du
début... Ca me ferais chier d'aller sur cette marque... On verra bien... Une
autre question ???

   -Oui, quelle heure est-il ?

        17 h 17...

   -Merci, on a parlé pendant un moment d'une émission chez Dechavanne...

        Oui, on en a d'ailleurs un peu trop parler à mon gout... J'avais eu
cette idée avant d'etre au Brain Trust mais je n'en avais jamais parlé à
personne... Puis, lorsque j'ai remarqué que les membres du Brain Trust étaient
eux aussi une salle bande de mégalos, je me suis adressé a Sophie Russel, une
assistante de Christophe... Je suis allé la voir à la SFP, et on a causé
pendant près d'une heure... La discussion apparaissait très satisfaisante, elle
étonnée par ma beauté débordante et moi subjuguée par son décolté surprenant,
l'affaire se présentait bien... Je me rappelle encore de cette dernière phrase
qui, sortant de sa bouche telle une mélodie gracieuse et hypnotisante qui vint
me chatouiller le tympan droit :

   "Pas de problème, on se rappelle cette semaine, et normalement la semaine
prochaine", Ah! que c'est bon...

        Bon, au bout d'un mois, je me suis dis qu'il ne serait pas inutile de
rappeler l'insolente qui me répondit aussitot :

   "Oh, ben faut pas vous inquieter, votre sujet est affiché sur le planning et
puis ça va plus tarder..."

        Je ne vous fais pas part des discussions suivantes où sa voix quelque
peu Fauxculesque commençait sérieusement à me prendre le choux... Toutefois,
l'émission n'est pas totalement tombée à l'eau puisque l'autre jour (Enfin,
y'a bien 3 mois), j'ai eu une autre personne de l'équipe à DeDe qui, je crois,
s'appelle Fréderique, et qui m'avait dis que ce n'était pas du tout à Sophie
qu'il falait s'adresser pour ce genre de truc mais que c'était mieux que si
c'était elle... Enfin bref, toujours pas de nouvelles... Mais peut-etre que,
dans un futur proche... Le truc Cooolll, c'est que maintenant qu'on est mort,
on va pouvoir montrer nos tronches, visage découvert (en argent), et puis que
ça peut étre cooolll... Ah que ouais... M'enfin bon, on est plus trés
pressés...

   -Quel est le plus bo crack que tu es le plus fier et que tu es hein ???

        Alors, incontestablement et sans hésitation, je dirais que c'est
Flight simulator II... Ce n'est pas le plus balaise que j'ai fais mais je l'ai
déplombé quatre mois après avoir commencé le déplombage... J'en ai bavé mais
au moins j'ai senti en moi monter une nouvelle sensation étrange et venue
d'ailleurs qui... Enfin bon... Sinon, juste après, j'ai tenté de me faire "La
Bète du Gévaudant" mais elle a pas voulu la salope... Il faut dire que j'étais
encore très jeune et que le 18 secteurs m'était encore incunnu... Ce sont en
fait mes deux protections fétiches...

   -Si on tu recommences sur une autre machine, sera-ce t-il que un autre
    pseudo, tu auras ???

        Trés certainement...

   -Et on peut le connaitre ?

        Non !

   -Alors saura t'on que ce nouveau pseudo cache un ancien Oliver TWIST ?

        Ca dépend; si je redémmare seul sur une autre marque il y a peu de
chance pour que vous le sachiasse... Mais les nouvelles courent si vite de nos
jours... Par contre si on remonte un truc avec des membres du Feu-Brain Trust,
je pense qu'on le criera au monde entier... Mais nous n'en sommes pas encore
là, et puis je vous ai déjà dit que mon avenir était pour l'instant incertain
au niveau du déplombage... Normalement je devrais recevoir un coup de fil d'un
cracker Atari histoire de causer un peu... Mais rien n'est encore décidé...

   -Une dernière question mon brave... Etes vous aussi bo que vous le dites ???

        Allez, j'avoue tout et je vous réponds franchement :

        - NON... Je suis, en fait, encore plus bo que je ne vous le dis...

        Voila, sinon, je ne trouve plus rien à vous raconter, mais sachez
quand meme que ça fout les boules de quitter une machine aussi pratique à
utiliser, à programmer, et qui possède des protections Ultra-Bandantes pour ne
pas savoir quoi faire... Vous en connaissez beaucoup de machine qui possède un
CALL-151 qui permet de tout voir, de tout modifier... Quand je vois
l'utilisation du débugger sur Atari, CA ME SCIE LA BITE... (c'est vous dire...)



       Voici donc ma dernière phrase sur Apple, pleine de sanglots et de joies
et puis j'arrete celle que je suis en train d'écrire parce que ça ne me va pas
du tout de faire du dramatique... Mieux vaut l'informatique...



Mes chers Appelistes, je vous dis à bientot; la seule question à se poser étant
       


      
             oooo   u   u
            o    o  u   u
            o    o  u   u
            o    o  u  uu
             oooo    uu u



                                        See you next...


_______________________________________________________________Oliver_TWIST____


Retour sommaire

hr Crackware

Lettre ouverte de The Jokersoft.


 _____________________________________________________________________________
!                                                                             !
! Lettre ouverte du JOKERSOFT / CRACK-WARE 25 sep 89 : my last file on Apple! !
!_____________________________________________________________________________!



        Crack-Ware : ne pas dépasser la dose médicale prescrite!!!

        Dans tout cela, Crack-Ware (le plus dément free-ware sur la déplomb')
ne serait pas Cracvar s'il n'y avait pas un fichier blah-blah du Jokersoft (là,
j'ai pas mis le THE car cela sonne mieux dans la phrase, mais vous n'avez pas
interet à oublier cette particule de noblesse informatique!). Et pourquoi
parler de Moi par Moi : tout simplement parce que je suis un type GENIAL,
toutes mes copines vous le diront si vous avez l'occasion de les rencontrer,
mais surtout ne le demander aux autres membres du Brain Trust, car ils le
savent, mais n'oseront jamais l'avouer car ils revendiquent cette qualité eux
aussi (Eh! On n'est pas mégalo pour rien! Bo'del!).

        Mais vous direz : "c'est facile de dire qu'on est génial, quand on ne
vit pas avec les gens". Bon d'accord, mais si vous voulez je peux vous donner
un certificat signé de ma mère l'attestant, mais ma mère, elle s'en fout de
l'informatique et puis elle en a "ras la touffe" de tous les coups de fil, de
tous les messages minitellistes et de tout le courrier que je reçois et
surtout que j'envoie... Je vous raconte pas la joie dans la maison Jokersoft
lorsque que le petit TJS (je dis "petit" car je suis vraiment petit pour mon
age!) a dit à ses parents qu'il arretait de faire de l'Apple (et surtout quand
il a fait des annonces pour le vendre) et qu'il allait se consacrer activement
à ses études de médecine. D'ailleurs pour reprendre ce que je disais sur ma
taille et qui peut se consilier avec ce que je suis génial : AuroR (mon premier
"associé" en informatique) m'appellait : "petit Nestlé" car j'étais, selon ses
dires : "un concentré de bonnes choses". Pour ceux qui nous connaitraient un
peu, je nie formellement et sur mon honneur avoir coucher avec AuroR, tandis
qu'avec The Copperfield en Espagne, alors là je ne dis rien!

        Ah le Copperfield, moi je l'aime, il est gentil, bien élevé, il est
mignon, il parle bien au téléphone, et puis il baise bien (si Cop., c'est
Adrianna qui me l'a dit (pjoke!)). Il faut que je vous avoue un secret :
pendant ces dernières vacances en Espagne, mon humble personne et Cop. avons
fait un petit bilan des types qui sont sur Apple (2e/2c mais aussi GS) et je
peux vous dire qu'on a cassé tout le monde et souvent pas très gentillement :
du membre du Brain Trust au name-killer, du petit au grand (par la taille),
du maigre au gros (par le poids), du blanc au noir, de l'Européen à
l'Américain; sous peu que vous ayez un pseudo un peu connu, vous avez été
passé au lance-flammes verbal de nous deux : vos oreilles n'ont pas sifflé?
Mais (continuant dans ma franchise, après les coups bas!) Cop. a un gros, gros
défaut : il est toujours en retard aux rendez-vous et ça c'est agaçant, c'est
super énervant. Putain! Pour cela je lui mettrais bien ma main dans sa gueule,
car au Brain Trust, on est des durs, des vrais, des mecs pas toujours cool...

        Et puis on l'a prouvé, qu'on n'était pas toujours cool : vous n'avez
qu'à vous rappeller la Global Thermonuclear War avec gdf, et puis les
adresses filées dans Cool-Ware 1 et 2, d'ailleurs j'en profite à ce sujet
pour ouvrir une grande parenthèse : Nous avons fait une grosse erreur en
foutant ces adresses, mais les types l'ont mérités; nous sommes conscients
de ce que nous avons fait et nous le regrettons, alors ce n'est plus la peine
de nous le répéter plusieurs mois après, nous ne sommes pas les Nazis dont on
nous a traités. Je ferme la parenthèse...

        Bon, revenons à ce que je suis génial, car moi je n'oublie pas le fil
de cette lettre ouverte où je peux enfin m'exprimer clairement dans mes
barbarismes après le sérieux qui ressort des fichiers pour Cracvar que j'ai
fait (34 sur 48, alors là j'ai écrit ça, mais j'en connais un qui va gueuler
c'est The Loockheed). Ah! Vous connaissez pas Loulou, c'est le plus jeune du
groupe, mais c'est aussi le plus hargneux, alors LCKD, il faut pas lui chauffer
les urines, sinon il mord. Mais bon, depuis 1 an et demi que moi et Cop., on le
connait, on a réussi à le dresser et maintenant on arrive meme à le promener
à Paris sans sa chaine, et il crache plus sur mon minitel quand il dialogue
avec un con en salon (un con = non-membre du feu-Black Chest!), en fait, c'est
normal, il a plus de minitel, ses parents ont vu 70% de 36.14 dans la facture
détaillée du téléphone, alors ils ont craqué (pas un soft, oeuf corse, c'est
une expression, une image, un symbole (tm) Les Inconnus).

        Tiens puisque je viens de parler du Black Chest, vous savez ou vous
allez le savoir : le Black Chest n'existe plus depuis le 7 septembre.
Plusieurs raisons à cela :
- Malgré nos efforts durant l'été 89 à chercher des news à Paris, nous n'avons
rien trouvé...
- Loockheed a été 3 semaines aux States (New York) et a ramené 2 softs...
- On a commandé environ une quinzaine de softs avec Goldpom aux States en 6
mois (des titres comme Tower Toppler, The Usurper, Ultima 6, etc...) et on n'en
a reçu qu'1, à savoir Technocop...
- J'accuse les boites américaines de distributions softs qui font des pubs dans
des revues telles Computer Gaming World, A+, Incider de Waper-ware, c'est-à-
dire d'annoncer des softs qui n'existent pas (je donne le cas d'Uridium de chez
Mindscape qui fut annoncé pendant un an et demi et qui fut finalement retiré du
catalogue car Mindy n'avait toujours pas eu le Copyright.)
- D'autres raisons, of course, je ne vous ai donné que la partie Software de la
chose inérante au concret du sujet, vous n'avez qu'à relire l'intro de Cracvar,
et lire les raisons de l'arret du Brain Trust (je ne vais le recopier ici, je
ne suis pas une secrétaire, moi, je ne m'appelle gdf qui tapota des journées
entières sur son clavier sous Applewriter pour ses cours de daubes
(distribution gratuite TBT).

        Dorénavant pour recevoir des softs ou des products, contactez :
        Tél. : 36.15 / Code : Rtel / Bal ou Club MvGang.

        Y'en a encore un du TBT-Paris que je ne vous ai pas parlé et j'ai
oublié de citer, et si je le met pas il va gueuler celui-là aussi (d'ailleurs
il m'a demandé de rajouter une ligne où je parlerai de lui dans l'intro car je
l'avais oublié), c'est The Oliver Twist, alors j'écris son pseudo 5 fois de
suite comme cela il sera content, ah! ces braves betes il leur en faut peu pour
etre heureux; j'y va : oliver twist, oliver twist, oliver twist, oliver twist,
oliver twist (bon j'ai pas mis les majuscules, tu m'en veux pas?). Bon, je
ne parle pas beaucoup de lui car sinon je vais dire pourquoi il a été éjecté
du Brain Trust pendant quelques semaines (et dire qu'il n'y avait pas son
pseudo dans la preview 1 de Cracvar!!!). Je vous dirais que c'est le plus
gros déconneur que je connaisse et qu'il est aussi trèssuperbeaucoupplein
génial, mais pas encore autant que moi (vous voyez, on n'y revient toujours)
Pour le reste, relisez l'intro. de Cool-Ware 2 concernant son entrée au TBT.

        Alors je vous parle un peu de moi car j'ai déjà parlé de mes 3
collègues parisiens (je vous parlerai des provinciaux après). The Jokersoft
c'est-à-dire ma personne est un individu passionné et passionnant (demandez
toujours à mes copines), et avant de se lancer à fond dans la déplomb' il y a
un an et demi (putain ça fait trois fois que j'écris cette durée!), car le fix
n'était plus "sa tasse de thé", il est un DeeJay, un vrai de vrai, avec les
platines, les disques, les lumières, et tout et tout : Et Zip, zip et Rap, rap
et "équipe ta platine d'une feutrine et beurre tes tartines avec de la
margarine..." et fais nous un megamix de Boney M... Vous auriez du connaitre
cette époque, c'était fantastique, mais il a eu rapidement des troubles
auditifs donc il dut arreté. Quoi le téléphone aussi ça rend sourd, quoi le
walkman aussi, hein, y'a une distribution de topinambourds... Vous avez lu, je
parle de Moi à la troisième personne du singulier, ça fait plus classe.

        Je vous parlerai bien de Captain Crack, mais je le connais pas beaucoup
et encore je suis celui du TBT qui le connais le mieux, avec peut-etre Patchman
(à l'époque des free-wares à suite comme Bid. Mode D'Emploi, Plus, Qtips In The
Computer World, etc...) mais c'est aussi un petit rigolo qui adore casser les
gens avec des vannes du style : "Allez! Tu vas pas me dire que t'as un QI à 2
chiffres???" et des citations telles que : "Ici à Valbonne, la mer est belle,
le soleil est chaud, les filles, les deux!"

        Et puis le Patchoune, alors lui il est géant (malgré sa taille aussi!)
c'est un programmeur fou , c'est un acharné, mais qu'est-ce que tu fous sur
Atari ST, bo'del? Et puis là je lui ai fait une crasse, et il va gueuler (lui
aussi). Vous avez remarqué que pour le lecteur TBT, la partie graphique a été
réalisée par moi et la partie texte par Patchman, mais il y avait un petit bug
lorsqu'il n'y avait pas de joystick branché, et on ne pouvait pas sélectionné
son fichier text, alors dés le début j'ai testé si le joystick était connecté
ou non, et s'il ne l'était pas, ça inscrit "Plug your Joystick or Die" comme
pour Art Of Noise, mais vous pouvez toujours essayer de taper une touche au
clavier vous n'accéderez jamais au menu, le programme attend vraiment la
connexion du joystick. Alors je vous dis où est la crasse que j'ai fait à Pat.,
c'est qu'il n'a pas de joystick sur son //c, donc il ne pourrait jamais lire de
fichier. Ahahah! Mort de rire! De toutes façons, il s'en fout de les lire, il
s'intéresse plus à la déplomb' sur ST que sur Apple, lacheur, va... Quoi que!
nous aussi???

        Je vous aurais bien aussi raconter l'histoire du Français d'origine
soviétique, qui va voir Batman en anglais avec des sous-titrages allemands dans
un pub espagnol, mais bon cela n'intéresse personne!!! Ah, ça y est, je vous ai
parlé de Batounet, en 4 ans d'existence du pseudonyme The JokerSoft, je ne vous
avais jamais expliqué que la partie JOKER de mon pseudo venait directement du
plus fameux ennemi de l'homme chauve-souris. Mais en cette période où la
Batmania déferle sur notre cher hexagone, il fallait bien que je vous explique
le pourquoi du comment de la chose. Et le SOFT, ah bon, vous vous en foutez,
mais vous savez c'est la dernière fois que je "cause" sur mon clavier, alors
vous en saurez jamais rien car dans quelques jours je serais "mort"
informatiquement comme Le Joker à la fin de Batman (quand meme pas écraser
comme une crepe!) Bon, eh bien, je m'écrase comme j'aurai du le faire plus
d'une fois sur la rub app de Rtel, ce qui nous a attirer pas mal d'ennuis à
cause de nos grandes gueules (ex : nous avons été viré de Buster à la suite
d'une dispute avec un de ses sysops en salon public, putain, quelle poufiasse,
quand meme cette bonne femme qui a toujours voulu peter plus haut que son cul!)

        Alors je me retire de ce monde cruel du piratage en sortant par la
grande porte des artistes, en ayant réalisé mon grand reve : faire partie du
plus grand groupe de déplombeurs nationaux sur Apple 2 pendant un bon moment!

        Mais ne vous sortez pas tout de suite vos mouchoirs, je reviendrai
dès que mes études de médecine auront pris une bonne tournure, sous un autre
pseudo car Le Joker est bel et bien mort pour la seconde fois...

        Et n'oubliez pas qu'avec le TBT, la peche aux moules, c'est cool!!!


        Chao... Bonne chance... A suivre...


Retour sommaire