textfiles/apple/DOCUMENTATION/cia.linguist

523 lines
20 KiB
Plaintext

32
#32 : 081 CIA/THE LINQUIST
<=-=*=------------------=*=-=>
| The C.I.A Files |
<=-=*=------------------=*=-=>
| The Linguist |
<=-=*=------------=*=-=>
| Instructions |
<=-=*=------------=*=-=>
| Part A |
<=-=*=--------=*=-=>
<=-=*=---------------------------=*=-=>
| Written by |
| The Camel Jockey |
| Wareforce..|
<=-=*=---------------------------=*=-=>
| Hard Copy from |
| The Arson |
<=-=*=---------------------------=*=-=>
| |
| This file was written for |
| |
| Gremlin's Lair |
| 3 Rana Elite 3's |
| [201] 536-7794 |
| |
| Dragon Quest |
| 10 Megs. |
| [503] 292-6560 |
| |
| Abdul's Oasis |
| 10 Megs. |
| [619] 341-2984 |
| |
| Thieves Guild |
| 2 Dr. |
| [904] 683-0247 |
| |
| Pirate's Chip |
| 10 Megs. |
| [206] 734-7468 |
| |
<=-=*=---------------------------=*=-=>
| |
| All sysops may use these docs |
| for their own BBS but they may not |
| change any of the credits in any way|
| or add to them.... |
| |
<=-=*=---------------------------=*=-=>
| Overview |
<=-=*=---------------------------=*=-=>
| |
| The Linguist allows you to do a |
| raw nibble dump of an entire track, |
| examine the data at your leisure, |
| and then carry out a sector by |
| sector translation of the raw disk |
| nibbles into code in the form that |
| your machine normally deals wih. In|
| other words, the Linguist will |
| transform all 3 of the encoding |
| formats used on Apple disks (6&2, |
| 5&3, and 4&4) into a recognizable |
| and executable form. |
| |
| The immediate importance of all |
| this is that after this is, that |
| after dumping a track of raw nibbles|
| and translating them into ordinary |
| hex, you can immediatly jump back to|
| Tricky Dick and display this code as|
| an Applesoft, Integer, or assembly |
| listing. Of course, Tricky Dick is |
| also no slouch at translating. But |
| where a disk has too badly |
| clobbered, too heavily protected, |
| made sectorless, encoded in 4&4 - or|
| simply requires a raw nibble |
| examinaton to establish the |
| formatting - old Tricky is just not |
| up to the job. That's when the |
| Linguist springs into action at the |
| touch of a CTRL E to help out. |
| |
<=-=*=---------------------------=*=-=>
| How to Instuct The Linguist |
<=-=*=---------------------------=*=-=>
| The Linguist Needs Tricky Dick |
<=-=*=---------------------------=*=-=>
| |
| Tricky Disk and The Linguist |
| have what you might call a permanent|
| intimate relationship. That is, The|
| Linguist will not work properly |
| unless Tricky dick is also present |
| in memory. This is because the |
| program uses some of Trick Dick's |
| internal routines in orger to both |
| conserve RAM and to maintain an |
| efficient interface with the user. |
| So if you try to run The Linguist |
| alone, you'll get some rather |
| strange effects. |
| |
| Once Tricky Dick is in memory, |
| hit CTRL C to BLOAD The Linguist. |
| It loads in at $8000 in memory and |
| can be accessed at any time from |
| Tricky Dick. |
| |
<=-=*=---------------------------=*=-=>
| Getting From One to the Other |
| [^C ^E] |
<=-=*=---------------------------=*=-=>
| |
| When the Linguist is in memory, |
| you can jump to it at any time from |
| Tricky Dick by pressing CTRL E. |
| When you first enter The Linguist, |
| the disk arm recalibrates and emits |
| that grating machine-gun rattle we |
| have all come to knw and hate. The |
| sound effects notwithstanding, you |
| can always get back to Tricky Dick |
| by typing CTRL C. |
| |
<=-=*=---------------------------=*=-=>
| The Help Screen |
| [/ or ?] |
<=-=*=---------------------------=*=-=>
| |
| If you happen to need a brief |
| reminder about any of The Linguist's|
| commands, just hit the '/' key to |
| display the help screen. This |
| brings up a list of instructions, |
| together with their accompanying |
| keystrokes. A '^' before a letter |
| indicates a CTRL key must be pressed|
| at the same ime as the letter. You |
| can call up the help screens at any |
| time. |
| |
<=-=*=---------------------------=*=-=>
| The Linguist's Data Display |
<=-=*=---------------------------=*=-=>
| |
| Hitting the space bar gets you |
| from The Linguist's introductory or |
| help screen to the to the data |
| display; several of the Linguist's |
| commands also automatically do the |
| same. This screen shows you one |
| memory page (256 bytes) of code in |
| the data buffer, which starts at |
| $4000 and ends at $7FFF in RAM. |
| The 4-digit hex addresses on the far|
| left of the screencorrespond exactly|
| to memory locations in te buffer. |
| This allow you to calculate the |
| buffer locations of any block of |
| code by simply counting up. For |
| example, the positions of th tenth |
| byte in row $4000 would be $400A. |
| |
<=-=*=---------------------------=*=-=>
| Entering Commands |
<=-=*=---------------------------=*=-=>
| |
| The "ALL COMMANDS" message at |
| the botton of the screen promptsyou |
| enter the instructions you want the |
| Linguist to carry out. Each command|
| is echoed on te right of the '?'. |
| An incorrect entry is signalled by a|
| brief "ping". |
| |
<=-=*=---------------------------=*=-=>
| Track Selector |
| [< ; >] |
<=-=*=---------------------------=*=-=>
| |
| You can decrement or increment |
| the track number (which appears |
| after 'T=') a half track at a time |
| by hitting the '<' and '>' keys |
| respectively. The track numbers |
| progress up to $7f, at which point |
| wraparound takes place. This is to |
| allow the use of The Linguist with |
| drives capable of reading 80-track |
| diskettes. To clock the track |
| number forward or backward rapidly, |
| hold down one of the two keys and |
| the REPT key simultaneously. An |
| often quicker way to input a track |
| number is to type ';', followed by |
| the number of number. This only |
| works for whole tracks, but the next|
| adjacent half track can always be |
| specified by hitting the '<' or '>' |
| keys. |
| |
<=-=*=---------------------------=*=-=>
| Seeting the Disk Arm to Track $00 |
| [^S] |
<=-=*=---------------------------=*=-=>
| |
| Hitting CTRL S recalibrates the |
| disk arm, pulling it back to track |
| $00. It cmes in handy for clocking |
| back the track number rapidly, and |
| also to give your drive a reference |
| point to find the selected track |
| (during a rew nibble read your |
| machine makes no check of the track |
| numbers on te disk to find the |
| current track). |
| |
<=-=*=---------------------------=*=-=>
| Reading a Track |
| [^B] |
<=-=*=---------------------------=*=-=>
| |
| Hit CTRL B to read the desired |
| track into The Linguist's buffer. |
| Be sure to select the correct drive |
| while still in Tricky Dick before |
| jumping to the Linguist. One buffer|
| page of data will appear in te data |
| display area immediately after a |
| read. If the introductory or help |
| screens were up at the time of this |
| command, a switch to the data |
| display will automatically take |
| place. |
| |
<=-=*=---------------------------=*=-=>
<=-=*=---------------------------=*=-=>
| Paging through the Buffer |
| [<- ->] |
<=-=*=---------------------------=*=-=>
| |
| Pressing the right arrow changes|
| the data display to the next page in|
| the buffer. So if the data from, |
| say, location $4000 to $40F0 are |
| displayed, hitting the right arrow |
| once flips to the data located from |
| $4100 to $41F0. This can be |
| continued until you reach the end of|
| the buffer at $7FFF. In the same |
| manner, the left arrow pages |
| backward a page at a time until you |
| get to the beginning of te buffer. |
| Extremly fast scrolling can be |
| accomplished by holding down one of |
| the arrows and REPT at the same |
| time. The controls are "locked" so |
| that you never accidentally stary |
| lower than the beginning or higher |
| than the end of the buffer. |
| |
<=-=*=---------------------------=*=-=>
| Jumping to the Beginning or the End |
| of the Buffer |
| [^B ^N] |
<=-=*=---------------------------=*=-=>
| |
| You can instantly get back to |
| the beginning of the buffer at $4000|
| by hitting CTRL B; CTRL N takes you |
| right to the end. (page $7F) |
| |
<=-=*=---------------------------=*=-=>
| Cursor Movements |
| [I, J, K, M AND ^I, ^J, ^K, ^M] |
<=-=*=---------------------------=*=-=>
| |
| I, J, K, and M move the cursor |
| around the data display just like |
| they do when used for Applesoft |
| editing. When these commands take |
| the cursor beyond the edge of the |
| screen, scrolling or wrapping |
| occurs. For example, pressing 'K' |
| when the cursor is at the end of a |
| row causes it to jump to the |
| beginning of the next row; pressing |
| 'M' when the cursor is on the bottom|
| line of the display causes the |
| screen to scroll up one line. |
| Holding down CTRL and hitting any of|
| the 4 keys increases the distance |
| covered, causing the cursor to jump |
| to the edge of th screen. |
| |
| A continuous scroll can be |
| obtained by moving the cursor to the|
| top or botton of te screen and |
| pressing REPT together with 'I' and |
| 'M' keys respectively. This can be |
| continued untill the first or last |
| of the buffer data appears on the |
| screen. |
| |
<=-=*=---------------------------=*=-=>
| Decoding the Address Field |
| Information |
| [Cursor controls] |
<=-=*=---------------------------=*=-=>
| |
| At the botton left of your |
| screen you will find a separate line|
| of data consisting of a 4-digit |
| address followed by 4 2-digit |
| numbers. It displays a translation |
| from 4&4 into normal hex of 8 |
| consecutive disk nibbles starting |
| with the byte under the cursor. |
| This enables you to decode the |
| address field information by placing|
| the cursor on the first byte to the |
| right of 'D5 AA 96' address field |
| header of any sector. The data line|
| will display the results in the |
| following order: the buffer address |
| of the byte under the cursor, the |
| disk's volume number, the current |
| track number, the numbr of the |
| sector whose address field you |
| examining, and the address field |
| checksum. The buffer address is |
| always a 4-digit number and the |
| other items are each 2-digits long. |
| All are in hexadecimal and the |
| sector number represents the |
| physical sector on he disk. the |
| meaning and interpretation of this |
| data will be fully explained in the |
| tutorial which follows the |
| instruction section. |
| |
| Since most disks use 4&4 nibbles|
| in the address field only, the 4&4 |
| translation will usually be |
| meaningless if the cursor is placed |
| eleswhere among the sector data. |
| One important exception, however, |
| occurs when entire files have been |
| deliberately encoded in the 4&4 mode|
| (as can be found in many current |
| games). If you are working with |
| such a disk, you can decode a string|
| of 8 4&4 nibbles by positioning the |
| cursor over the first byte of any |
| 4&4 byte-pair. |
| |
<=-=*=---------------------------=*=-=>
| Changing the Decoding Mode |
| [^D] |
<=-=*=---------------------------=*=-=>
| |
| To switch between the 6&2, 5&3, |
| and 4&4 decoding modes, hit CTRL D, |
| followed by the number after the |
| '&'. For example, if you are |
| presently in 6&2, you will see a |
| '<62>' just under the '<-->' at the |
| upper right of the screen. To |
| change to, say 5&3, type in a |
| CTRL D, causing the cursor to leap |
| up and cover the '6'. This is your |
| cue to press the '5' key which |
| automatically changes the display |
| mode to '5&3'. If you previously |
| changed Tricky Dick's D.O.S. |
| version to 3.2, the display will |
| already show '5&3'. |
| |
<=-=*=---------------------------=*=-=>
| Translating a Sector |
| [^T] |
<=-=*=---------------------------=*=-=>
| |
| After having selected the |
| encoding mode, place the cursor over|
| the first byte after the 'D5 AA AD' |
| (on a normal disk) data field header|
| of the sector you want to translate.|
| Then press CTRL T (which evokes a |
| high pitched squeek), and jumps back|
| into Tricky Dick with a CTRL C. The|
| sector's raw nibbles will have to be|
| translated into normal hex bytes. |
| The translation will be in Tricky |
| Dick's buffer and can be displayed |
| on the screen in the usual manner by|
| pressing any key. You can also use |
| the procedure described in Trick |
| Dick's instructions (Chapter 3) to |
| get an Applesoft, Integer, or |
| assembly listing from this code. |
| |
| If you are jumping back and |
| forth between Trick Dick and The |
| Linguist to translate a series of |
| sectors in the above manner, you may|
| be hampered somewhat by the |
| recalibrating each time you press |
| CTRL E. A patch to the Linguist |
| which eliminates this is 8026: 2C |
| from the monitor. However, if you |
| change track number you must let The|
| Linguist recalibrate to get its |
| bearings. Do this with CTRL S as |
| described previously. To patch back|
| the CTRL E recalibration, type |
| 8026: 20 from the monitor. |
| |
| Remember that if you are |
| translating 4&4, the disk is likely |
| to be sectorless. What you get when|
| using this encoding mode is a |
| translation of 512 consecutive disk |
| nibbles into 256 bytes of normal |
| hex. |
| |
<=-=*=---------------------------=*=-=>
| Changing the Drive Number |
<=-=*=---------------------------=*=-=>
| |
| You probably won't need to do |
| this often while using The Linguist.|
| If you do, however, you will have to|
| go back to Tricky Dick with a |
| CTRL C, change the drive number from|
| there, and then jump to The Linguist|
| with CTRL E. |
| |
| The other Tricky Dick parms such|
| as the sector number, D.O.S. |
| version, and sector marks are not |
| relevent to the operation of The |
| Linguist. This is because The |
| Linguist reads in an entire track at|
| a time and completely ignores the |
| disk's formatting. |
| |
<=-=*=---------------------------=*=-=>
| Getting Hard Copy from The Linguist |
<=-=*=---------------------------=*=-=>
| |
| Although no printer dump |
| subroutine has been included in The |
| Linguist, it's easy to get hard copy|
| of a given section of the buffer. |
| First make a note of the beginning |
| and ending addresses on The |
| Linguist's hex display of the block |
| of data you want to print. Then get|
| into BASIC by hitting RESET once or |
| CTRL C twice and turn on your |
| printer card. Finally enter the |
| monitor with CALL-151, type |
| <first address>.<second address> |
| (e.g., 4000.4010), and your printer |
| will start churning out the copy. |
| |
<=-=*=---------------------------=*=-=>
| |
| This a Wareforce docfile... |
| Look for the next chapter in the |
| C.I.A. series... |
| |
| The Linguist (Part B) |
| |
| Well that is it I hope you enjoy|
| it... |
| |
| The Camel Jockey |
| |
| (:> Wareforce <:) |
| |
<=-=*=---------------------------=*=-=>
<=-=*=---------------------------=*=-=>
| Call these BBS's |
| |
| Gremlin's Lair [201] 536-7794 |
| Pirates of P.S. [206] 783-9798 |
| I.C's Socket [213] 541-5607 |
| Golden Key [214] 263-9017 |
| The South Pole [312] 677-7140 |
| The Outpost [312] 441-6957 |
| Tamerlane's Keep [408] 688-9629 |
|Relm of the Rogues [415] 941-1990 |
| Dragon Quest [503] 292-6560 |
| Dune [503] 297-7413 |
| Rome [503] 636-6718 |
| Thieves Den [512] 441-9429 |
| The Curse [612] 920-3576 |
| The Safehouse [612] 724-7066 |
| Abdul's Oasis [619] 341-2984 |
| The Cove [619] 920-3576 |
| Apple Manor [716] 654-7663 |
| Temple of Doom [805] 682-5148 |
| |
<=-=*=---------------------------=*=-=>
[15] #36 Library #8
<1-58/Last-32> <?/Q/A/+/-/P> #: