[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Translation of Cracking Lesson 19, was Re: Toy Shop for Apple II available and a long story



We did not slow down the drives to "fit" 18 sectors per track, rather, it was perfectly-efficient use of space and only one splice point, the beginning of the track. We calibrated the drives used for duplication daily to spec.

Any more questions? :-)

-Roland G.


On Tuesday, January 17, 2012 12:35:19 PM UTC-8, D Finnigan wrote:
> Vladimir Ivanov wrote:
> 
> > On Thu, 12 Jan 2012, Antoine Vignau wrote:
> 
> > 
> 
> >> A long time ago, in France...
> 
> >> It was a dark and stormy night ((c) Schulz),
> 
> >> It was about 18-sec protections,
> 
> >> It was in 1988...
> 
> >>
> 
> >> @ http://boutillon.free.fr/Underground/Cours/Cours_GDF/Gdf19/Gdf19.html
> 
> > 
> 
> > 
> 
> > Oh, and I should check Trinity some day ..
> 
> > 
> 
> >> ps. I hope you read French ;-)
> 
> > 
> 
> > Unfortunately, no.
> 
> > 
> 
> > Salut, Deckard!
> 
> >
> 
> 
> 
> I did translate some of this document, but work is slow since (took me about
> 
> 2 hours to do just this part). Machine translations are unsatisfactory due
> 
> to slang (including one rather vulgar word!) and computer jargon used in the
> 
> document.
> 
> 
> 
> However, if there is indeed interest in a complete English translation, I
> 
> could see about completing it. Here is what I have so far:
> 
> 
> 
> 
> 
> Cracking Lesson 19
> 
> 
> 
> [ Traduction Anglais par DF ]
> 
> 
> 
> Update for 19 August 2011.
> 
> 
> 
> At the beginning of their writings, the Godfather lessons changed numbering.
> 
> Apart from the author himself, it is somewhat probable for someone having
> 
> the last version of each of these lessons. After a recent message from LoGo
> 
> (& Christo), I find myself again with 2 lessons numbered "20" with differing
> 
> content.
> 
> 
> 
> I therefore decided to rename the one that I had (lesson 20: 18 sectors) to
> 
> be lesson 19 in order to align it with the latest list of lessons in my
> 
> possesion. Lesson 20 will therefore be about the protection of Datasoft
> 
> 1988, a lesson which will be online on 20 August 2011. In addition to the
> 
> text references here, I had to change the contents of the .dsk where a "19"
> 
> appeared in stead of "20", including the screens. Otherwise, the old lesson
> 
> 20 will not boot. I changed the boot 1 to allow it. Note that even though
> 
> the menu suggests so, there is no file "INFORMATIONS COURS" on this disk.
> 
> Probably to save disk space. The option will not work if you choose it from
> 
> the menu.
> 
> 
> 
> [ some screenshots of the program ]
> 
> 
> 
> 
> 
> Disk : Gdf19.dsk
> 
> "-" files are DELETED files | "*" files are LOCKED files
> 
> ----------------------------------------------------------------------
> 
> B A$1F00 (007936) L$12FF (004863) 022 COPIEUR N6
> 
> B A$3000 (012288) L$0537 (001335) 007 EPYX_FURY
> 
> B A$0901 (002305) L$19E7 (006631) 027 EPYX_FURY.S
> 
> B A$3000 (012288) L$06F3 (001779) 008 GOGSMITH                      
> 
> *A A$0000 (000000) L$0208 (000520) 004 GOGSMITH.PRG
> 
> B A$0901 (002305) L$2BD3 (011219) 045 GOGSMITH.S
> 
> A A$0000 (000000) L$0CCD (003277) 014 LECTEUR.PRG
> 
> B A$0300 (000768) L$0051 (000081) 002 LECTURE PISTE AIRHEART
> 
> *A A$0000 (000000) L$00C5 (000197) 002 LECTURE WING.BAS.PRG
> 
> B A$40E8 (016616) L$0018 (000024) 002 MODULE_IOB
> 
> B A$4000 (016384) L$0400 (001024) 006 PAGE_TXT
> 
> B A$4E00 (019968) L$04B0 (001200) 006 RWTS AIRHEART
> 
> B A$4000 (016384) L$0800 (002048) 010 RWTS16
> 
> B A$4000 (016384) L$04F0 (001264) 006 RWTS18                        
> 
> A A$0000 (000000) L$029E (000670) 004 HELLO
> 
> T A$0000 (000000) L$8900 (035072) 137 T.COURS 19 REVISION 1.00      
> 
> B A$0901 (002305) L$3730 (014128) 057 GOGSMITH 1.20.S
> 
> B A$3000 (012288) L$0762 (001890) 009 GOGSMITH 1.20
> 
> A A$0000 (000000) L$020D (000525) 004 GOGSMITH 1.20.PRG             
> 
> T A$0000 (000000) L$0800 (002048) 008 T.LES PROGRAMMES DE CE DISK
> 
> T A$0000 (000000) L$0400 (001024) 004 T.INTRODUCTION
> 
> A A$0000 (000000) L$001D (000029) 000 COPYN6.PRG                    
> 
> B A$0901 (002305) L$059D (001437) 007 CHRCH_NIB.S
> 
> B A$1000 (004096) L$0053 (000083) 002 CHRCH_NIB
> 
> B A$1000 (004096) L$0051 (000081) 002 CHRCH_NIB2
> 
> A A$0000 (000000) L$01DB (000475) 003 CHRCH_NIB.PRG
> 
> B A$0901 (002305) L$03DD (000989) 005 CHRCH_NIB2.S
> 
> 
> 
> This catalog contains 27 files. 0 were DELETED.
> 
> ----------------------------------------------------------------------
> 
> 
> 
> 
> 
> Introduction
> 
> 
> 
> Lesson 19 : Br0derbund Protections / 18 sectors per track
> 
> 
> 
> 18 sectors per track? But you say it doesn't matter, my dear sir!
> 
> Everyone knows that there are always 16 sectors per track, and not more!
> 
> Why not 43 teeth per mouth or 15 years for the presidential term?
> 
> My goodness! Perhaps it is possible, no?
> 
> 
> 
> With information about the Apple, one can do everything .. modify everything
> 
> ..
> 
> hack everything.. The only thing is to know how!
> 
> Well then, let's see how!
> 
> 
> 
> ======================= Amicably, G.
> 
> 
> 
> Lesson 19, revision 1.00.
> 
> 
> 
> ========================================================================
> 
> Lesson 19 : Br0derbund Protections / 18 sectors per track	Godfather
> 
> ========================================================================
> 
> 
> 
> Revision 1.00					Update : 07 May 1988
> 
> 
> 
> This lesson wouldn't have been as brilliant without the invaluable help of
> 
> people like Mister DD, The Gog's, Numéro 6, and surely, the author of all
> 
> this mess: Roland Gustafsson!, from the Br0derbund companty. Thank you!
> 
> 
> 
> ========================================================================
> 
> 
> 
> 1. Introduction
> 
> 2. The magnetic data marks on the disk
> 
> 3. Data storage on the diskette (nibbles)
> 
> 4. The rwts18 routine, reading, writing, formatting,  recalibrating, etc...
> 
> 5. Copy Program
> 
> 6. Supplementary Problems: track numbers on the bad tracks, verify
> 
> 7. Adapt the copier to the new, diverse Br0derbund programs
> 
> 8. History and diagnostics of all the latest Br0derbund programs
> 
> 9. 18 sectors per track. Who says better?
> 
> 
> 
> ========================================================================
> 
> 1. INTRODUCTION TO 18 SECTORS PER TRACK and the problem it gives us
> 
> ========================================================================
> 
> 
> 
> On today's menu, the current protection of the finest Apple software, you
> 
> will recognize them if I talk about Karateka, Captain Goodnight, Wings of
> 
> Fury, to name just a few.. Br0derbund. In starting this lesson, you will
> 
> perhaps be asked who is the dedicated guy: Roland Gustafsson. He's the dick
> 
> Gustaffson, also a lead editor of the American magazine, NIBBLE. He is the
> 
> "official" protector for Br0derbund. And therefore, the author of the
> 
> protection that we are studying here: 18 sectors per track.
> 
> 
> 
> >>>>>>>>>>>>>>>>>>>>
> 
> Deckard's notes from 07 May 2007: first of all, in the entire GDF text, the
> 
> name mentioned is Steven Gustavson instead of Roland Gustafsson. I have
> 
> corrected it. One must know that Steven has a connection with Roland! It's
> 
> about one of the easter eggs utilized in the program PRINTSHOP COMPANION. If
> 
> you boot side 1 of the program and type STEVEN following with a press of
> 
> ESC, the screen will display in reverse!! Useless, but funny. Furthermore,
> 
> Roland never wrote for Nibble magazine. Actually, I found many articles
> 
> written by him in A+ magazine. He was interested in programming sound on the
> 
> Apple IIGS.
> 
> <<<<<<<<<<<<<<<<<<<<
> 
> 
> 
> Picture a disk containing 18 sectors per track with a total of $23 tracks,
> 
> normally numbered from $00 to $22.. That means as many tracks as on a disk
> 
> formatted for DOS 3.3, but each containing 2 more data sectors, making two
> 
> more $FF bytes. ($1FF bytes more per track!).
> 
> The cracking of a protection "format", as you well know, always happens with
> 
> a format conversion step. The original disk has a non-standard format, we
> 
> want to convert the first one to a standard format, meaning 16 sectors per
> 
> track!.. Only here, a big problem is presented! Look, to try to explain it
> 
> to you, here are the "capacities" of these two formats:
> 
> 
> 
> 16 sectors per track with 35 tracks having $FF bytes per sector.....143360
> 
> bytes
> 
> 18 sectors per track with 35 tracks having $FF bytes per sector.....161280
> 
> octets
> 
> 
> 
> Do you understand the problem? Not yet? Well then, I shall continue...
> 
> 
> 
> 16 sectors per track with 35 tracks : 560 data sectors per side!
> 
> 18 sectors per track with 35 tracks : 630 data sectors per side!
> 
> 
> 
> That means, considering that you find the 18 sector reading routine in any
> 
> original Br0derbund program, and you are also able to prepare the format
> 
> conversion, the question remains:
> 
> 
> 
> You have 70 sectors "too many" which are not indispensable.. Where are you
> 
> going to put them, because they must go somewhere on a "deptrotected" disk -
> 
> that's the goal of this game - a disk with 16 sectors per track.. And
> 
> remembering that these 16 sectors per track are - in theory - already
> 
> occupied with the program's data. Am I clear enough?
> 
> 
> 
> Pierrette has a jug of milk that can hold only a liter, and she must bring
> 
> back to the village - under pain of galactic cataclysm - 1.5 liters of milk.
> 
> Do you have a solution to this problem?
> 
> 
> 
> I am going to try, with this lesson and potentially a future lesson number
> 
> 19.2, to explain to you and to clarify the two solutions which appear to us,
> 
> after - believe the best - intense thoughts of the entire planet!
> 
> 
> 
> ===============================================================================
> 
> 2. The magnetic data marks on the disk
> 
> ===============================================================================
> 
> 
> 
> First thing sirs, you are going to open your mind.. be open to anything that
> 
> could be said here.. to any novelty.. Expand your field of possibilities,
> 
> concentrate, breathe in., breathe out.. and understand!
> 
> 
> 
> For the following explanation, and I say that for the perfectionsts, I will
> 
> say ahead of time, I must alter the facts for a better comprehension. For
> 
> example, I am going to imply that the disk read head moves around the
> 
> tracks, but really it is the diskette that turns under the disk read head.
> 
> You may accept that the effect is identical depending on the point of
> 
> reference, and you may also equally grant that I have the right to allow a
> 
> few "lies" which will follow, for your benefit.. Well, if you discover some
> 
> anamolies - because you already know too much - you don't have to accuse me
> 
> here, I excuse myself here in advance. Off we go..
> 
> 
> 
> I ask you to imagine the track of a disk. A track we will compare, to
> 
> simplify things, to a bicycle track, such as the track at Bercy. A circular
> 
> track, on which one dispatches a little man (the runner) having a certain
> 
> speed. This bicyclist who will complete a loop of the track in a certain
> 
> time is compared with the read head of your drive which will make the loop
> 
> of a data track in a certain time. The problem presented to use is that of
> 
> formatting. If the reading of a track can be done sector by sector in any
> 
> time (one can read a track a few sectors at a time, and if one's drive is
> 
> too quick or the reading routine is too slow, one must come back a second
> 
> time, see a third time to get the rest).
> 
> 
> 
> The formatting is a "cut" of a track in sectors according to a given format.
> 
> For the formatting, the problem is different. One cuts the disk, and the
> 
> third sector, for example, no matter which format, 19, 18, 16, 13 sectors or
> 
> otherwise, must be placed immediately after the second (physical sectors),
> 
> and immediately after the first.. Everything must be cut after sector 0,
> 
> which marks the "start of the cut", and just up to the last sector, in a
> 
> single pass! In a single loop of the disk surface.
> 
> 
> 
> One will assume that our bicyclist leaves from the starting line (which is
> 
> also quite close to the finish line - the end of the track), with a set of
> 
> 18 flags, because there are 18 sectors per track. He is going to leave a
> 
> flag every 22.22 meters around a track of 400 meters in circumference. For
> 
> example. It takes a certain time to cease a flag and its pole, and again a
> 
> certain time to place it to mark the start of one of the cuts of the track,
> 
> of one of the divisions which he must make there. From one of the sectors of
> 
> the track it will go. The problem, I restate, is that he must place all of
> 
> the flags in a single loop.. and if, on these 18 flags, he only ends up
> 
> placing 17, for example, the formatting of this track must start again. The
> 
> desired number must be placed from the start, according to the format.
> 
> 
> 
> You understand well further that the bicyclist moves slowly around the
> 
> track, so he will have time to place these flags, and therefore be able to
> 
> plant a large number of them. In 1979, DOS 3.2 contained only 13 sectors per
> 
> track for speed. The drive proposed by Apple at the start wasn't reliable
> 
> enough, also the formatting was done more slowly, and our bicyclist could
> 
> not have the time to put barely just 13 flags. Understand that "flag" means
> 
> field address, the separation point between two sectors on the track, and
> 
> understand that between two flags, data are written (the tread of a tire
> 
> rests on the track.. if you wish (!?)). We are going to see much later the
> 
> head of these flags and the mark of the tire tread on each 18 sector track,
> 
> when I talk about the 18 sector format.
> 
> 
> 
> Now, we went only to 16, and BR0DERBUND, with some slow drives, has
> 
> formatted a disk with 18 sectors. If our drives are of a good speed not too
> 
> fast (you can test their speed with a program called Copy II+ 5.x, or EDD
> 
> v4.2), you can then copy the Br0derbund programs without too many problems.
> 
> Although sometimes there are a few boot modifications (generally on track
> 
> $0) to get a working copy. Whatever the speed of your disk drive head, 18
> 
> sector programs boot just as well no matter which drive, but don't copy at
> 
> all from the nibble copier. (in theory, the copier must work everywhere,
> 
> functioning at a "normal" maximum speed.)
> 
> 
> 
> Apple hasn't yet made - and won't make - DOS 3.4 with 18 sectors per track
> 
> for this reason: all the drives, they can read 18 sectors, but they can't
> 
> all format 18 sectors.
> 
> 
> 
> ===============================================================================
> 
> 3. Data storage on an 18 sector diskette
> 
> ===============================================================================
> 
> 
> 
> In general, several tracks (track $00, or even tracks $00 and $01) are in
> 
> the DOS 3.3 format, 16 sectors per track. All of this is normal, and these
> 
> are the tracks which contain the famous rwts18. But leave me rather to tell
> 
> you about the 18 sector format in quesetion.
> 
> 
> 
> In fact, we talk of 18 sectors per track because each track has the
> 
> equivalent data of 18 DOS 3.3 sectors of $FF bytes, making $17FF bytes, but
> 
> on the disk, the data are regrouped into macro sectors. It doesn't add up,
> 
> therefore, 18 sectors of $FF bytes, mais 6 sectors of (3 * $FF) bytes, these
> 
> amount to the same incredible count of $17FF bytes per track, versus $15FF
> 
> per track which we are offered in in the 3.3 format.
> 
> 
> 
> The first macro-sector corresponds to sectors 00,06,12.
> 
> The second  macro-sector corresponds to sectors 01,07,13.
> 
> The third  macro-sector corresponds to sectors 02,08,14.
> 
> The fourth  macro-sector corresponds to sectors 03,09,15.
> 
> The fifth  macro-sector corresponds to sectors 04,10,16.
> 
> The sixth macro-sector corresponds to sectors 05,11,17...making 18
> 
> secteors!!
> 
> 
> 
> Each macro-sector is constituted in the following manner: (to make a
> 
> comparison with the 3.3 format, refer to lesson 6)
> 
> 
> 
> _____________________________________________________________________________
> 
> !                                                                           
> 
> !
> 
> !                                                   ( 18 SECTOR FORMAT )    
> 
> !
> 
> !                                                                           
> 
> !
> 
> ! - A field address :  Prologue D5 9D                                       
> 
> !
> 
> !                                                                           
> 
> !
> 
> !                      Track    NN    ! CONVERT WITH THE HELP OF A          
> 
> !
> 
> !                      Sector   NN    ! CONVERSION TABLE                    
> 
> !
> 
> !                      Checksum NN                                          
> 
> !
> 
> !                      Epilogue AA                                          
> 
> !
> 
> !                                                                           
> 
> !
> 
> ! - Two self-sync nibbles       FF FF                                       
> 
> !
> 
> !                                                                           
> 
> !
> 
> ! - A data field :     Prologue A4    ! variable, according to program,
> 
> WATCH!!
> 
> !          (I will refer to the prologue as "the header which can vary"!)   
> 
> !
> 
> !                                                                           
> 
> !
> 
> !                      Data     $400 NIBBLES (4 Nibbles --> 3 Bytes)        
> 
> !
> 
> !                      Checksum NN                                          
> 
> !
> 
> !                      Epilogue D4                                          
> 
> !
> 
> !_____________________________________________________________________________!
> 
> 
> 
> The nibbles are converted into bytes on the fly while being read, with the
> 
> help of a conversion table. This is contrary to DOS 3.3, where the
> 
> conversion (post-nibblization) happens in a buffer after the nibbles are
> 
> read.
> 
> 
> 
> On the other hand, some Br0derbund software, such as was the case for
> 
> Airheart, the track $1C doesn't exist. The track was identical to track $1B
> 
> and was numbered as track $1B in the field address. But it's a "plus" which
> 
> isn't really important in regard to the "18 sectors" protection, and it
> 
> hasn't been employed in any of the recent Br0derbund programs. Therefore, no
> 
> panic! We will talk about it in the 'Cracking' lesson, but here is a bit
> 
> below..
> 
> 
> 
> [ Traduction Anglais par DF ]
> 
> 
> 
> -- 
> 
> ]DF$
> 
> Mac GUI Vault - A source for retro Apple II and
> 
> Macintosh computing.
> 
> http://macgui.com/vault/