home *** CD-ROM | disk | FTP | other *** search
/ Simtel MSDOS 1992 June / SIMTEL_0692.cdr / msdos / dskutl / adamdisk.arc / ADAMDISK.DOC < prev    next >
Text File  |  1990-06-10  |  39KB  |  635 lines

  1.  
  2.  
  3.                            DISKTALK DOCUMENTATION
  4.  
  5. Thank you for downloading the DISKTALK collection.  I have put many hours into
  6. unravelling the mysteries of the Coleco Adam, and into writing these programs. 
  7. I hope you enjoy using them as much as I do - John Wiley, September 16, 1989.
  8.  
  9. SUMMARY OF CONTENTS:
  10.                                  I. DISKTALK
  11. The DISKTALK program lets you exchange files between the Coleco ADAM and the
  12. MS/PC-DOS IBM PC and compatible family of computers, via floppy disk.  It's
  13. really three programs in one.  It includes easy to use utilities for both Adam
  14. to DOS, and DOS to Adam file Transfer.  It also has an advanced Reveal disk
  15. feature.  The Transfer portion is for importing Adam files into the MS-DOS
  16. environment, and vice versa.  The Reveal portion is for examining and changing
  17. Adam disks, in the PC drive.
  18.  
  19. ** NOTE: DISKTALK may not work correctly if any "Terminate Stay Resident"
  20.      programs are loaded.  These "TSR" type of programs such as Sidekick,
  21.      ProKey, and Uniform can cause conflicts.  If you are unsure about the
  22.      presence of a TSR on your computer, boot from a floppy disk which has
  23.      neither an AUTOEXEC.BAT or CONFIG.SYS file on it before running the
  24.      DISKTALK.COM program.
  25.  
  26.                          III. TECHNICAL INFORMATION
  27. This is a brief but detailed tour of the Coleco Adam floppy disk operating
  28. system known as SmartFiler.  The information is very helpful in using the
  29. Reveal function to repair and modify disks.
  30.  
  31.                                  IV. PRINTER
  32. Finally, an article describing the Adam printer and helpful modifications to
  33. it.  It is based on my own experience in repairing, modifying and improving my
  34. printer.  Although you may not want to risk working on your printer, you'll
  35. benefit from knowing more about how it works.
  36.  
  37.            *******************************************************
  38.  
  39.                                  I. DISKTALK
  40. DISKTALK can be started from any drive, but requires that the Adam disk be in
  41. drive A: during operation.  Disktalk has two main functions, as follows: 
  42.      1. TRANSFER an Adam file to or from DOS-IN to an Adam disk.  The source
  43. file will still be there, but when you're done a copy of it will also be on
  44. the DOS or Adam disk.  This involves some fancy communication, but is designed
  45. to be easy to use.  Another common use of the Transfer portion of the program
  46. is to see what's really on an Adam disk.  You'll notice that files deleted on
  47. the Adam are still listed and accessible for Transfer.
  48.  
  49.      2. REVEAL and/or modify an entire Adam disk.  This is the second level of
  50. Disktalk, meaning that you must first go through the Transfer function. Reveal
  51. enables direct editing of Adam disks, with many convenient features.  It also
  52. has a COPY BLOCK utility, to copy one or more 1k Adam disk "Blocks" to a DOS
  53. drive B: disk.                                                   DISKTALK pg.2
  54.  
  55.                              TRANSFER and DOS-IN
  56. TRANSFER: 
  57. This will copy a file from an Adam disk, on an MS-DOS disk.  To use the Adam
  58. Transfer utility, first start the DISKTALK program from any disk drive. NEXT,
  59. MAKE SURE THE ADAM FLOPPY DISK IS IN DRIVE A:, and tap the letter Y key. 
  60. After DISKTALK tells you what kind of disk it thinks is now in Drive A:, just
  61. tap the Enter key.  After a moment, the first half of the Adam disk directory
  62. (DIR 1: first 20 file entries) will be displayed.  The display is arranged
  63. with 12 characters, followed by 28 hexadecimal numbers on a line.  Each line
  64. represents one possible file entry.  The 12 characters are the name portion,
  65. and the numbers give the Adam information about that file.  Note that only the
  66. actual name of the file is highlighted.  The Fourth file name in the display
  67. will be highlighted, since it is the first possible user file on an Adam DATA
  68. disk.  If it's a SmartWriter file, you'll be notified on the right side of the
  69. screen.  Note the menu of options at the bottom of the screen.
  70.  
  71. To Transfer a file, just use the Arrow keys (cursor keys on numeric keypad),
  72. to go up or down the screen to select an Adam file to transfer.  Note that Num
  73. Lock must be OFF to use the arrow keys.  If the file you want isn't listed in
  74. DIR 1, use the Pg Dn key to select DIR 2 (the 2nd directory).  
  75.  
  76. After selecting the file to Transfer, tap the F10 key (As shown in the menu at
  77. the bottom of the screen).  This begins preparations to Transfer the Adam file
  78. into an MS-DOS file in another drive.  The first 3 files on a data disk and
  79. the first five on a system disk are Adam system files.  These and some other
  80. files may not Transfer properly.  If you've selected such a file, you may get
  81. a message such as "Bad SB, BU, or LB".  If so, you'll need to use the Reveal
  82. function to modify it (& Save Changes), if you really want to Transfer it.
  83.  
  84. At the top of the screen, you'll be asked to enter a DOS path.  If you want
  85. the new file to be in the DOS C:\wp\stuff\ directory for example, just type
  86. that in and tap the Enter key.  Remember to use a colon (":") after the drive
  87. letter, and to end the path with a backslash "\" marker.  If you just tap the
  88. Enter key without typing in a path, the new file will be sent to drive B:\ for
  89. you automatically.
  90.  
  91. ** NOTE:  *DO NOT* Transfer to drive A:\.  If you only have ONE DISK DRIVE,
  92.      use a DOS "RAM disk" as the other drive.  Set up the DOS RAM disk before
  93.      using DISKTALK.  Start DISKTALK in A:, then put the Adam floppy disk in
  94.      A: and Transfer the file(s) to the RAM disk.  After you Exit DISKTALK and
  95.      remove the Adam floppy, put a DOS disk in drive A: and copy the
  96.      transferred file(s) from the RAM disk.
  97.  
  98. Next you'll be asked for a DOS file name.  Type in any legal DOS name, and tap
  99. the Enter key.  If you want to CANCEL the Transfer, just tap the Enter key
  100. without typing in a name.  If you've already typed in the name and want to
  101. Cancel, just use backspace to erase it and then tap the Enter key.  Once the
  102. Transfer has started it's best to let it finish, but you could use Ctrl-C.
  103.  
  104. Finally, you may be asked to select the format you'd like the Output file to
  105. be in.  This only happens if you've selected an Adam SmartWriter file to
  106. Transfer.  If you're in doubt, just tap the Enter key - the DISKTALK Transfer
  107. program will choose for you, and notify you what format was selected.  If you
  108. want to know more, keep reading - Otherwise, CONGRATULATIONS!  You've just
  109. discovered DISKTALK!  Tap F7 to Exit DISKTALK, and remember to remove the Adam
  110. floppy disk from the computer.
  111.                                                                 DISKTALK pg.3
  112.                             More about Transfers
  113. The TXT and WP Output formats are only possible with SmartWriter Input files
  114. (name in the DIR ends with "H" or "h").  You can use the Reveal screen to
  115. change the letter at the end of the file name.  That is, to get TXT Output
  116. from an AdamBASIC file you'd use Reveal to change the A to an H at the end of
  117. the file's name in the DIR, use F10 to Save Changes - F7 to Exit, and select
  118. TXT output back in the Transfer screen.
  119.  
  120. The Output format for non-SmartWriter files is BIN.  That's Binary format,
  121. which means the Adam file will be copied verbatim - "as is."  For SmartWriter
  122. files, the best option is WP because it translates the SmartWriter Margin and
  123. Page settings (you can use a DOS file conversion utility then, if you don't
  124. have WordPerfect).  The TXT and WP formats will both translate the Underline
  125. and CR (Carriage Return) codes (you may need to remove Underlining from the
  126. Adam file if you don't have WordPerfect).  The difference is that the TXT
  127. format won't translate the Margin and Page info from the SmartWriter header. 
  128.  
  129. If you're fortunate enough to have access to WordPerfect, it will accept the
  130. WP Output files and add the missing CR code - the file will look just like it
  131. did on the Adam.  Otherwise, you may need to use a program or macro to re-
  132. insert a CR before each LF in the Output file before your word processor will
  133. accept it.  This is because many programs use both a CR and LF to end each
  134. line.  The Adam uses only a CR, and WordPerfect uses only an LF.  Since some
  135. programs (such as WP) will accept an LF alone and add the CR back in, the TXT
  136. and WP Output formats will translate the Adam's CR into an LF for you during
  137. the Transfer.
  138.  
  139. If you tap the F3 key, a few lines of helpful reminders will appear.  When
  140. you're done, tap any key to return to the program.  If you've finished your
  141. session, tap F7 to Exit the program.  Remember to REMOVE THE ADAM DISK after
  142. you tap F7 to Exit.  This can save you from permanent data loss on the Adam
  143. disk, since MS-DOS may try to write to it later.  If your Adam floppy disk
  144. ever does get damaged in any way, you may be able to repair it using the
  145. Reveal program.
  146.  
  147. At this point I would like to note that, while this program has worked well
  148. for me, it may not work well for you.  The many hours I put into this effort
  149. were mainly as a focus to learn about inter-computer communication, how we
  150. communicate with our machines, and a new language: Turbo Pascal.  This was a
  151. major part of my degree in Communications.  So if you're inclined to think
  152. that this program could be better, I agree wholeheartedly.  I'd add that the
  153. price was reasonable, and you are welcome to fix it.
  154.  
  155.  
  156. DOS-IN:  
  157. This utility allows writing a DOS Text file onto an Adam disk.  The file can
  158. then be read directly by the Adam.  DOS-IN thus complements TRANSFER since
  159. the two types of computers can communicate freely via floppy disk.  At the
  160. bottom of the main Transfer screen, the menu notes that Ctrl-F5 is the key
  161. combination to invoke this utility.  This matches the DOS WordPerfect use of
  162. Ctrl-F5 for "Text In" to import DOS ASCII text.
  163.  
  164. When you hold down the Ctrl key and tap F5, an introductory screen and some
  165. instructions appear.  Any key except Y will abort the utility and return you
  166. to the main Transfer screen.  This utility is not very flexible.  It will
  167. automatically do its best to accomplish copying a DOS file named -AX.TXT on
  168. the drive of your choice, to an Adam file named X.  To give it the best chance
  169. of success, prepare at least one Adam disk before starting.      DISKTALK pg.4
  170.  
  171. The DOS-IN utility translates a single DOS text file named -AX.TXT to an Adam
  172. SmartFiler file named X on a specially prepared Adam disk in drive A:.  Since
  173. you're not likely to use it very often, it's a quick and simple utility, with
  174. few features.  It can only Transfer one file at a time, and needs a separate
  175. prepared Adam disk for each file.  The disks can be reused, after using the
  176. Adam to copy the X file to any regular Adam disk.
  177.  
  178. To Transfer a DOS file to the Adam, first prepare an Adam floppy disk.  Put an
  179. Adam SmartFiler SYSTEM disk in the Adam drive, and pull the reset switch.  Use
  180. "Format" to make a blank Adam DATA disk (NOT a System disk).  Next, Escape to
  181. SmartWriter and type "Blank Transfer file."  Now store the workspace as a file
  182. named X.  This creates a file entry on the Adam disk, which can be used by the
  183. DOS-IN utility.  Label this disk, so that you won't put any other files on it
  184. later.  If you put other files on it, you may damage the one you Transferred
  185. and will probably damage the others if you use the disk to Transfer again. 
  186. This disk is only used to Transfer one file at a time.  You may want to make
  187. several such disks, so you can Transfer more than one file in a session.
  188.  
  189. You'll also need to prepare the DOS source file.  If it's a WordPerfect or
  190. other special type of file, you'll need to convert it to ASCII or DOS Text
  191. format.  Most word processing programs have a Text Out function, or Convert
  192. utility to do this.  Next make sure the source file is named -AX.TXT so the
  193. DOS-IN utility can find it.  
  194.  
  195. As you've probably guessed, I use WordPerfect.  I've set the DOS Text printer
  196. to B:\-AX.TXT so all I need to do is "print" a file or block to that printer
  197. definition.  If you use WordStar, best of luck.
  198.  
  199. Remember that DOS will only allow ONE file with the same name in to be in each
  200. directory.  So if you're going to Transfer more than one file in a session,
  201. you'll need to put the -AX.TXT files in different directories.  (Another
  202. method would be to name them -AX.TXT, X2, X3, etc.  Note the real name of each
  203. file as you prepare them.  After each one is Transferred, you'd use the DOS
  204. commands: del -AX.TXT, ren X2 -AX.TXT, etc.)
  205.  
  206. After you've prepared the source and destination files, just start the DOS-IN
  207. utility and follow the instructions.  Remember that the fourth file on the
  208. Adam disk will be written over.  That's the X file you created on the blank
  209. DATA disk.  If you put any other type of disk in drive A:, it may get written
  210. over.  I have put in a few safeguards against that, but hopefully you'll never
  211. test them.  You can reuse the X disk without reformatting it.  Just use the
  212. Adam to copy the Transferred file to a regular Adam disk before you do. 
  213. Either use the SmartFiler DiskManager program, or Get the file and then Store
  214. the workspace on another disk.  When you copy the X file to a regular Adam
  215. disk, give it a name based on its contents (not -AX.TXT).
  216.  
  217. Once you've prepared a few X destination disks, and worked out a quick way to
  218. format and name the -AX.TXT source files, DOS-IN is quick.  It just takes the
  219. -AX.TXT file and writes it to the Adam X disk a sector at a time.  Then you
  220. can use the Adam's letter quality printer.  Or you can Transfer a file to use
  221. on the Adam.  Some files may need cleaning up with REVEAL before Adam use.
  222.  
  223.                                                                 DISKTALK pg.5
  224.                              REVEAL & BLOCK COPY
  225. REVEAL: 
  226. To Reveal the Adam disk, first start the DISKTALK program.  Make sure the Adam
  227. floppy disk is in drive A:, and tap the letter Y key.  Then tap the Enter key. 
  228. After a moment, the Transfer screen will appear.  The menu at the bottom of
  229. the screen has a note on how to Reveal the disk.  Hold down the Alt key, and
  230. tap the F3 key.
  231.  
  232. Reveal has an introductory screen, and a prompt to type in a DOS track number. 
  233. If you just tap the Enter key without typing in a number, the track for DIR 1
  234. (track 0) is selected automatically.  Next is a prompt to type in a DOS sector
  235. number.  Again, just tap Enter to see DIR 1 (Sector 3).
  236.  
  237. After a moment, the Reveal screen appears.  The selected sector is displayed
  238. in duplicate.  On the left, it's in hexadecimal numbers.  On the right, it's
  239. in characters.  Your current position in the sector is highlighted on both
  240. sides.  Use the cursor (arrow) keys to move around the sector.  Home takes you
  241. to the first byte, and End takes you to the end of the current line.  To
  242. quickly get to the start of a line, tap End and then the Right Arrow key (Num
  243. pad key 6).  PgUp/PgDn take you to the previous or next sector, respectively.
  244.  
  245. At the top of the screen "Reading:" gives you the drive, side, track, sector,
  246. and Adam Block currently displayed.  In the upper right corner, the current
  247. Byte number, hexadecimal value (following the $ hex symbol), and decimal value
  248. (after the = sign) are shown.  These numbers represent the same byte as the
  249. character selected on both sides of the dual screen.  You can find the numeric
  250. value of a character by using the arrows to select it, and noting its hex and
  251. decimal values displayed in the upper right corner of the screen.
  252.  
  253. You can make changes to the Adam disk.  First use the cursor keys to select
  254. the particular character or byte you want to change.  Then type the changes in
  255. directly.  When you make changes, the most recent change and its location is
  256. shown at the bottom of the screen.  For values not represented by a key (or F
  257. key on the menu), hold down the Alt key and type the DECIMAL value using the
  258. numeric keypad.  The regular number keys (across the top of the keyboard)
  259. don't work for this.  When you release the Alt key, the change will appear.
  260.  
  261. ** NOTE:  The values 00 and 03 *CAN NOT* be entered using the Alt key numeric
  262.      keypad method.  Alt 03 will crash the program in fact.  Use F6 and F8 to
  263.      enter 00 and 03 as noted in the menu.  REMEMBER, NOTHING IS CHANGED ON
  264.      THE ADAM DISK UNTIL YOU SAVE YOUR CHANGES.  More on that later.
  265.  
  266. The Block number at the top of the screen is two hexadecimal digits, followed
  267. by either "a" or "b" to denote which half of the Block is displayed.  Each
  268. Adam Block is two DOS sectors.  So the sector shown on the screen at any time
  269. is either the "a" or "b" part of an Adam Block.  Adam files always start in
  270. the "a" half of Blocks.
  271.  
  272. DIRs: The Directory is in two parts - DIR 1 and DIR 2.  When you have selected
  273. one of the DIRs there are extra markers on the screen, and some extra F keys
  274. you can use.  The A, SB and BU markers note the columns corresponding to
  275. Attribute, Start Block, and Blocks Used values for each line.  F2, F4 and F9
  276. only work while you're in one of the DIRs.
  277.                                                                 DISKTALK pg.6
  278.  
  279. An Attribute (A) value of 14 (hex) indicates a deleted file, invisible to the
  280. Adam.  To restore such a file for the Adam to use, all you need to do is use
  281. the arrows to select the line in the DIR that file is on and tap F4.  This
  282. automatically changes the Attribute value to 10 (hex), making the file on that
  283. line back into an Adam user file.  The F9 key does the reverse, marking the
  284. selected file as deleted.  This feature is a real time saver for Adam users. 
  285. With F4 and F9, you can move through the DIRs and quickly restore or delete
  286. files.  These keys only work in the DIRs.  REMEMBER THAT NOTHING YOU CHANGE IS
  287. PERMANENT UNTIL YOU SAVE IT WITH F10.  Also, files deleted by marking them in
  288. this way will still be on the disk, until the Adam writes data over them.  It
  289. may do this if you subsequently use the Adam to Store a file.
  290.  
  291. F2 also works only in the DIRs, taking you to the Start Block of the file on
  292. the current line.  The Start Block (SB) column tells you (in hexadecimal) what
  293. Adam Block the file starts at.  If you're in one of the DIRs, the SB key (F2)
  294. automatically selects the SB column of the current row, and instantly advances
  295. you to and displays that Block.  Note that if it's a SmartWriter file, you're
  296. taken to the actual start of the file (byte 259).  To advance through the
  297. file, tap Pg Dn.  To return to the Directory (DIR) tap F5, as noted in the
  298. menu at the bottom of the screen.
  299.  
  300. The Blocks Used (BU) column contains the Hexadecimal number of Adam Blocks
  301. used by the file.  To translate the number into Decimal, just put the cursor
  302. on it and look at the value displayed in the top right corner of the screen
  303. (ie: $0F=15 - $hex=decimal).  This number includes any partial Block at the
  304. end of the file.  So a BU of 02 would be shown for a file of 1025 bytes, even
  305. though only one byte is used in the last Block.  Remember that Adam uses
  306. Blocks of 2 DOS sectors, so each Block is 1024 bytes.  The Header on
  307. SmartWriter files also complicates the calculation of a file's actual length. 
  308. See TECHNICAL INFORMATION for details.
  309.  
  310. Alt-F2 works anywhere on the disk, in addition to the DIRs.  Alt-F2 will Seek
  311. SmartWriter files from your current location to the end of the disk.  You can
  312. step through the disk from one file to the next, Seeking SmartWriter files
  313. that have been completely removed from the DIRs.  ONLY ADAM SMARTWRITER FILES
  314. ARE FOUND BY THE SEEK FUNCTION.
  315.      To restore such a file, first note its Start Block.  Then use Pg Dn
  316.      to find the end of the file.  Determine the number of Blocks, and
  317.      the number of bytes in the last Block.  Then create an entry in the
  318.      DIR for that file.  The Technical Information below will help you
  319.      figure all this out.  Once you've restored a few files, it's pretty
  320.      easy.  Really!
  321.  
  322.  
  323. COPY BLOCK:
  324. This utility is available from the Reveal screen, by holding down the Alt key
  325. while you tap F4.  It lets you copy one or more Adam blocks onto a DOS disk. 
  326. Why would anybody do that?  Well, there's a thing called CP/M available for
  327. the Adam.  CP/M makes the Adam much more useful, for people who are willing to
  328. learn its intricacies.  Trouble is, there is no way I know of to copy an Adam
  329. CP/M file to DOS automatically.  If you have Adam CP/M files, you can use
  330. Reveal to figure out where they start and how many Blocks long they are.  Then
  331. you can use COPY BLOCK to write them to a DOS disk.
  332.  
  333. If you're a REAL hacker, you'll also want to use the source code for DISKTALK
  334. to add a CP/M utility for the rest of humanity.  It shouldn't be hard.  Those,
  335. by the way, are famous last words.
  336.                                                                  DISKTALK pg.7
  337.  
  338.                          III. TECHNICAL INFORMATION:
  339. The Coleco Adam floppy disk drive uses Single Sided, Double Density 5 1/4"
  340. disks.  Since the disks are of this "SSDD" type, only side 0 is used.
  341.  
  342. ** NOTE: MS-DOS uses the first byte in Linear Sector 2 to identify the format
  343.      of a disk.  Typical MS-DOS DSDD disks have a value of 253 (hex FD) for
  344.      this "Media Descriptor" byte.  If an Adam disk is damaged, the ID byte
  345.      may have been changed to hexadecimal FD (253) by MS-DOS.  This causes MS-
  346.      DOS to identify the disk incorrectly when DISKTALK is started.  To
  347.      prevent such damage, always remove the Adam floppy disk when you Exit. 
  348.      To fix such a disk, use Reveal to select Track 0, Sector 2, tap Home, and
  349.      type a Question mark to change the ID byte (Block 02b, byte 0) to 63 (hex
  350.      3F).  Remember to Save the change, and MS-DOS will default to SSDD format
  351.      when reading the disk.
  352.  
  353. The Adam disk format uses 512 byte sectors, 8 sectors per track, and 40
  354. tracks.  This gives a total disk capacity of 160k.  SmartFiler, the Adam disk
  355. operating system, uses Blocks of 2 sectors.  SmartFiler occupies the first 2
  356. Blocks on Data disks, and the first 25 Blocks on System disks.  Files use only
  357. contiguous sequential Blocks, in 5:1 Interleave (see INTERLEAVE at the end of
  358. this section).  Adam CP/M formatted disks use the same interleave, but a
  359. different disk operating system.  DISKTALK won't read CP/M files, but can
  360. manipulate CP/M sectors and Blocks.  Adam CP/M comes with two programs for
  361. translating between SmartFiler and CP/M formats, both ways.
  362.  
  363.                     Adam SmartFiler disk operating system
  364. DIRECTORY: The Directory is in Block 1, and contains up to 39 File Records. 
  365. The Records are 26 bytes in length.  As mentioned above, each Block is two 512
  366. byte sectors (1024 bytes).  Since MS-DOS is oriented towards sectors, the 20th
  367. Adam Record is split between two sectors, and the 21st Record is shifted 8
  368. bytes in DIR 2.  This is why the Reveal screen looks jumbled in DIR 2, and BU
  369. is on the line below each file name.  For the main Transfer screen, I've
  370. hidden this from the user for simplicity.  Because SmartFiler was written for
  371. the Adam Cassette drive and future options, there are unused areas in the disk
  372. version.
  373.  
  374. FILE RECORDS in the Directory are each 26 bytes long, as follows: 
  375. Name-12 bytes, ending in Hex 4803 for SmartWriter Files (10 byte name + 4803).
  376.   **Note: The 4803 marks the end of the file name.  48 is the ASCII code for
  377.      the letter H.  Other letters are used for other types of files, and small
  378.      letters indicate backup files (ie: h for a SmartWriter backup file).
  379. Attribute-1 byte: $10=User file, $14=Deleted file.  (Note: $ indicates Hex)
  380. Start Block-4 bytes.  1st byte=Start Block.
  381. Length-2 bytes.  1st byte=Length of file (number of Blocks reserved on disk).
  382. Used Length-2 bytes.  1st byte=Used (number of Blocks actually used).
  383. Last Count-2 bytes.  Tells bytes used in Last Block, to find End of File.
  384. Date-3 bytes.  Apparently not used by Adam, but reserved for future options.
  385.  
  386. As noted, file names ending in H are SmartWriter files.  Those ending in A may
  387. be SmartBASIC, SmartLOGO or other types of files.  All types of files use the
  388. same scheme for Attribute byte.  The heart shaped symbol representing Hex 03
  389. is used by the Adam to find the end of each file name.  Only the first $03 in
  390. a name is used, so there may be more than one in the 12 byte Name area. 
  391. Others are ignored.
  392.  
  393.                                                                 DISKTALK pg.8
  394.  
  395. FILE HEADERS (258 bytes at start of file), are used on SmartWriter text files,
  396. and tell margin set, etc.  SmartWriter Headers start with 00 01 01.  Text
  397. starts at byte 259.  Headers are used by the DISKTALK Alt-F2 Seek command, to
  398. find SmartWriter files even on a disk with a damaged Directory.  The SB (Start
  399. Block) F2 key uses the file type (at end of file name) and Start Block found
  400. in the Directory.
  401.  
  402. FILES: The first File starts at Block 2 on non-system disks.  Only SmartWriter
  403. files have Headers, others start at the first byte.  DISKTALK automatically
  404. differentiates SmartWriter files from other types.
  405.  
  406. The SmartFiler FORMAT CODES are (HEX): 0D = HRt (Return or Enter), 13 = UL
  407. (Underline) on, 14 = UL off, TAB = spaces (TABs are converted to spaces by the
  408. Adam SmartWriter ROM word processor).
  409.  
  410. HEXADECIMAL ARITHMETIC uses a two digit "byte" to count in units of one, from
  411.      zero to 15 (0-F hex) per digit and 256 per byte.  The counting for each
  412.      digit is from 1 to 9, and on from A to F.  So Hex 9 and decimal 9 are the
  413.      same, but Hex A has a decimal value of 10 and Hex F = 16 decimal.  The
  414.      left hand digit in each Hex byte represents a multiple of 16.  This is
  415.      like the "tens" column in decimal arithmetic, which tells the number of
  416.      10 units to count.  The difference is that it counts "sixteens" instead
  417.      of "tens".  So hex $0F = 16 (if the zero is counted too - not always!),
  418.      $10 = 17, and $FF equals the decimal value 256.
  419.        "Two byte" Hex arithmetic uses four digits.  The right hand two digit
  420.      byte tells the number of units of 256 to count.  But it's on the right
  421.      instead of the left to help keep you confused.  So $FF 00 = 255 decimal,
  422.      and $00 01 = 256.  It's called backwords storage (good idea, eh?).
  423.  
  424. The only part of an Adam File Record that involves two byte Hexadecimal math
  425. is the Last Count.  That is, Last Count uses both of its two allotted bytes. 
  426. The largest possible value for the right hand byte in the Last Count of a File
  427. Record is 04, since that would be four units of 256, or 1024 bytes (two 512
  428. byte DOS sectors, one Adam Block).  To get the total Last Count for a File
  429. Record, multiply the right hand byte by 256 and add the value of the left hand
  430. byte.  If you're smart, you already know all this.  If you're lucky, perhaps
  431. you don't care.
  432.  
  433. 5:1 INTERLEAVE, means that Absolute Sectors (AS) in each Track advance by 5,
  434. starting at MS-DOS:1, and ending at :4.  The next AS read in that Track is
  435. always ahead 5.  Example: Starting at :1, the next sector will be :6, then :3
  436. (counted 7,8,1,2,3 to advance 5).  This continues until sector :4 is filled,
  437. then advancing to Sector :1 of the next Track.  The sequence to read
  438. contiguous Sectors is 1,6,3,8,5,2,7,4  ->(go to next Track) 1,6,3... and so
  439. on.  So if the Header is in 6:3 and the File is 4 Blocks (8 Sectors), the
  440. sector read sequence would be Track 6: 3,8,5,2,7,4  ->  Track 7: 1,6.
  441.  
  442.                                SECTOR SEQUENCE
  443. BLOCK  0   |   1   |   2    |   3     [   4    |    5    |    6    |    7   ]
  444. AS 0:1  :6  :3  :8  :5  :2   :7   :4  [1:1  :6   :3   :8   :5   :2   :7   :4]
  445.   (AS=Absolute Sector, BLOCK=1k Adam) |----------- Track sequence ----------|
  446.                                                                 DISKTALK pg.9
  447.  
  448.                            IV. THE COLECO PRINTER
  449.                            according to John Wiley
  450.  
  451. **NOTE:  There are several versions of Coleco printers - details & specifics 
  452. vary, but basic concepts apply to all.  Of course, any work you do on your
  453. printer is AT YOUR OWN RISK.
  454.  
  455.      ** MAKE SURE EVERYTHING IS UNPLUGGED FROM ANY ELECTRICAL SOURCE **
  456.                ** BEFORE ATTEMPTING REPAIR OR MODIFICATION **
  457.  
  458.                                 INTRODUCTION
  459. The information in this article may be helpful in getting the most from an
  460. Adam printer.  There are tips for everyday printing jobs, modifications, and
  461. other tips for Adam owners.  There is an exploded drawing of the printer in
  462. circulation, but how you can get a copy is anyone's guess.
  463.  
  464. In the first section of this article, I describe Common Problems with the Adam
  465. printer.  Following each problem, are letters in parentheses indicating which
  466. reference items to read.  For example, if the PAPER SKEWS when printing, read
  467. items a, b, d, i, c, and q.  There you'll find details on how I think the Adam
  468. printer works, possible causes of the problem, and potential solutions.
  469.  
  470. The second section describes some Modifications I have made to my own printer. 
  471. If you are mechanically inclined, have a few tools, and are prepared to risk
  472. damaging your printer, you may want to try them yourself.  I modified mine 2
  473. years ago, and it's still going strong.  In parentheses next to the MOD# is
  474. the amount of time it took me to make that modification.
  475.  
  476. Last is a section with some general Tips for Adam owners.
  477.  
  478.  
  479.                               COMMON PROBLEMS:
  480. * PAPER SKEWS - Paper is normally held in position by friction on the platen
  481. (a,b,d,i), and may be skewed by friction with other things (c,i,q).
  482. * MISSING CHARACTERS - (h,j,k,m,r).
  483. * LIGHT OR UNEVEN PRINT - The ribbon advances 1 click on every 2nd character  
  484.  strike.  Increasing ribbon advance to 3 clicks with MODification #I helps    
  485.   greatly, but uses more ribbon.  A software method of toggling advance from
  486. 2nd to every character would help, but would be difficult to write.  Better
  487. quality ribbon and MOD # II help too.- (e,f,h,i,j,k,o,).
  488. * COLUMN/MARGIN MISALIGNMENT & UNEVEN CHARACTER SPACING - (c,g,i,l,m,n,p).
  489. * NOISY (!!!) - 1: Removing the snap-on cover helps a little.  2: Putting a   
  490.  pillow on top (don't let it touch the paper or carriage!) helps more, but
  491. watch out for heat buildup (only cover it while printing).  3: Isolating the
  492. printer (foam feet underneath & a cardboard box over it-or an expensive
  493. enclosure), + pillow helps a lot.  MOD # III helps too. - (e,i)
  494.  
  495. Reference Items:
  496. a) Clean platen with alcohol or lacquer thinner.
  497. b) Align paper bail so all 3 rollers touch evenly.
  498. c) Paper shield on carriage touching paper-loosen ribbon tray screws & adjust.
  499. d) Paper guide rollers loose, damaged or not touching evenly.  ( See TIP # 2 )
  500. e) Striker (hammer or armature) set too far or too close (periods dent paper).
  501. f) Striker angle wrong. (see Mod.# II)
  502. g) Daisy wheel loose, low quality, or faulty.
  503.                                                                DISKTALK pg.10
  504.  
  505. h) Irregularities in platen (flat spots, damage, etc).  ( See TIP # 2 )
  506. i) Loose parts (platen advance assy., ribbon tray, and all other mountings).
  507. j) Ribbon advance- mark the 2 white shafts on the ribbon and see if they both 
  508.  turn; if only 1 does=bad ribbon; if neither does=bad ribbon or advance unit.
  509. k) Fouled, folded, or faulty ribbon.  ( See TIP # 3 )
  510. l) Carriage interference- check freedom of movement, misplaced wires-(Mod # V)
  511. m) Rail cleaning & lubrication- use silicone or WD40 on a rag (less is
  512. better).
  513. n) Loose string or pulley.
  514. o) Striker or armature binding or weak.
  515. p) Bent, warped or misaligned rails or base shell.
  516. q) Rough or fouled paper guide (I meticulously smoothed mine & removed burrs).
  517.  
  518. r) Data missing - check CPU plug, board connections & other wiring. 
  519.  
  520.  
  521.                                 MODIFICATIONS
  522.                  ( UNPLUG IT and proceed at your own risk. )
  523.                       ( not for all printer versions )
  524. MOD. # 1  (1.5 hrs)
  525. The ribbon typically advances very slightly after every second character is
  526. printed.  As a result, the ribbon is struck many times in the same place. 
  527. This modification increases ribbon advance, to reduce multistrikes from up to
  528. 12, to only 4; giving darker more reliable printing at the cost of faster
  529. ribbon use.  Remove ribbon, ribbon tray, and inner solenoid shaft circlip. 
  530. Slide plastic ratchet actuator in & reinstall circlip, while holding shaft
  531. (fig. 2).  Remove rubber shaft stop & cut to approx. 1/2 thickness, reinstall
  532. & shim or recut as needed to get reliable 3 click (3 ratchet gear teeth)
  533. advance. 
  534.  
  535. MOD. # II  (.5 hr)
  536. This is a deliberate misalignment of the striker to get more uniform density
  537. and even underlining after doing MOD I.  Because the ribbon is struck twice,
  538. moved 1/2 character, and struck again; the left side is weaker (it's been hit
  539. 4 times).  Angling the striker to the left side of the char. leaves more ink
  540. after the first 2 strikes and forces more out of the last 2, by hitting
  541. lighter on the right and harder on the left.  My printer has 2 phillips
  542. mounting screws, with an eccentric slot adjusting screw for the striker.  I
  543. just loosened the right mounting screw, forced the alignment to the left by
  544. turning the alignment screw, and retightened.
  545.  
  546. MOD. # III  (1 hr)
  547. This is a noise abatement measure which changes the printer's plastic upper
  548. case from a noise generator to a noise suppressor, by isolating it with foam.
  549.    With the printer on it's side or inverted on a soft surface, remove the 7
  550. recessed screws holding the u.c., then place printer upright and remove u.c. 
  551. Cut soft foam to fit between u.c. & lower case, or between u.c. mounting posts
  552. & their sockets on l.c.  Reinstall u.c. without screws, making sure nothing is
  553. interfered with, and u.c. touches l.c. only through foam.  Also see TIPS.
  554.                                                                DISKTALK pg.11
  555.  
  556. MOD. # IV  (.5 hr)
  557. This is a cheap alternative to the Coleco tractor feed.
  558.    Cut a cardboard box to hold the form paper in a curve (about 8" radius),
  559. allowing it to unfold into the printer without a direct pull.  Put it behind
  560. the printer, avoiding any interference with ventilation.  I mounted mine,
  561. along with the printer, on a board I slide under a low table to reduce noise.
  562.   The paper tends to drift to the left and bind against the paper bail.  This
  563. occurs on mine after printing 2-15 pages.  It's no problem if you watch it.
  564.   Another idea is to roll the form paper onto something & mount the roll above
  565. the printer.  Vert. Margins set to 3 & 56 seems to work well for form feed.
  566.  
  567. MOD. # V  (.5 hr)
  568. This is to minimize the case interfering with the carriage wire harness. 
  569.   Remove the right rear mounting post (fig. 1-V) from the upper case.  Trim
  570. off the small locating tab from the lower case.  You can locate these before
  571. disassembly by removing the snap-on top cover & seeing where the wire harness
  572. interferes as the carriage is moved from side to side.
  573.  
  574. MOD. # VI  (1 hr.)
  575. The keyboard and disk drive can be changed to use standard modular phone
  576. cords.  Only the outer 4 lines are used on the expensive Coleco 6 line cords.
  577.   To change the whole system requires rewiring the jacks on the units.  That's
  578. more hassle and risk than I was prepared to take.
  579.   But I did pick up a surplus keyboard to use as a spare.  With it, I got an
  580. extra cord.  I then took a standard modular phone double female inline jack
  581. and modified it.  I squeezed it with vise grips to loosen the joint in the
  582. plastic.  After prying it apart, I simply moved the gold wires to the
  583. positions of the 4 active lines on the Adam.
  584.   Do this on both sides of the jack and tape it back together, and you have an
  585. Adam to Adam cable connector.  With my connector and two Adam cords, I can sit
  586. comfortably 15 feet from the Adam and its 19" TV.
  587.  
  588.  
  589.                                     TIPS
  590. TIP # 1
  591. The SmartWriter line spacing of blank lines (carriage return alone on a line)
  592. is one and a half times the spacing for text.  That is, if Spacing is set at 2
  593. the printer inserts 3 lines between paragraphs.  If spacing is 1, 1 1/2 lines
  594. are inserted instead of one blank line.  This causes a problem when printing.
  595.   This doesn't show up on the screen, but only when printing.  Thus a document
  596. may print off the page bottom, despite the Vertical Margin being set correctly
  597. on the screen.  You may also find that documents with blank lines don't format
  598. correctly (printing on forms for example).
  599.   If you put a period on every blank line, it fixes this problem.  I found
  600. that I could put the period in the center of the page, and it doesn't look too
  601. bad.  For a business letter, you can put a tiny dot of White Out on the
  602. period.  You can also shift the whole document over, and print the periods off
  603. the edge of the page.
  604.  
  605. TIP # 2
  606. I haven't tried this myself, but I'm told that filling the inside of the
  607. platen with clay or putty helps reduce noise.  
  608.   TO REMOVE THE PLATEN:  Remove u.c. (see Mod. #III), pry out the plug on the
  609. left end of the platen, pry between the gear and the platen at the right end,
  610. pull out the line feed wheel (white thumb wheel) enough to remove platen.  Use
  611. a large screwdriver to pry, and go slowly.  It takes considerable force the
  612. first time, so don't pry just in 1 place.
  613.                                                                 DISKTALK pg.12
  614.  
  615. TIP # 3
  616. The long video monitor cord provided with the Adam degrades the picture.
  617.   Use a short (1' or less if you can) high quality stereo cord to your TV or
  618. monitor, and see how clear a Coleco can be.  I found that the impedance of the
  619. cord matters far less than its length.  There is some RF interference between
  620. the monitor and Adam, so you'll need to experiment.  Vary their positions to
  621. minimize this interference, and take care to provide good ventilation.
  622.  
  623. TIP # 4
  624. Often when ribbons are about half used, they start printing badly.
  625.   This is because the internal drag increases.  By prying with a knife at the
  626. ribbon lid mounting prongs, you can open the ribbon case.  Open the case and
  627. take note of how it's threaded, to get it back together right.  Remove the
  628. used ribbon from the takeup reel, and the ribbon may work again.
  629.   Sometimes there isn't enough pressure on the drive shaft, from the idler
  630. wheel.  Put a small piece of electrical tape on the end of the idler arm,
  631. where it touches the case.  That holds the ribbon more firmly between the
  632. drive shaft and idler, to help overcome drag.  Use a new rubber "O" ring from
  633. a plumbing shop to replace a bad takeup belt.
  634.  
  635.