home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64-128Toolkit / ACE14D.SFX / ace14.doc < prev   
Encoding:
Text File  |  1990-02-12  |  93.7 KB  |  1,855 lines

  1.  
  2. ┴├┼-128/64 ╒╙┼╥'╙ ╟╒╔─┼  FOR ╥ELEASE #14   [╩UNE 29, 1995]
  3. ------------------------------------------------------------------------------
  4. ╘┴┬╠┼ ╧╞ ├╧╬╘┼╬╘╙
  5.  
  6. 1. ╔╬╘╥╧─╒├╘╔╧╬
  7. 2. ╒╙╔╬╟ ╘╚┼ ╙┘╙╘┼═
  8. 2.1. ╔NPUT/OUTPUT REDIRECTION
  9. 2.2. ╨ATHNAMES
  10. 2.3. ├OMMAND-SHELL ARGUMENT╙
  11. 2.4. ┼XTERNAL-COMMAND SEARCH PATH
  12. 2.5. ╫ILDCARDS
  13. 3. ╙┘╙╘┼═ ├╧╬╞╔╟╒╥┴╘╔╧╬
  14. 4. ─┘╬┴═╔├ ═┼═╧╥┘
  15. 5. ─┼╓╔├┼╙
  16. 5.1. ├OMMODORE CHARACTER DEVICES
  17. 5.2. ─ISK DEVICES
  18. 5.2.1. ├OMMODORE DISK DEVICES
  19. 5.2.2. ├═─ DISK DEVICES
  20. 5.2.2. RAMDISK DEVICE
  21. 5.3. ╙CREEN
  22. 5.3.1. NORMAL SCREENS
  23. 5.3.2. BITMAPPED 80-COLUMN SCREEN FOR THE 64
  24. 5.3.3. GRAPHICS SCREENS
  25. 5.4. ╦EYBOARD
  26. 5.5. ╒SER-PORT INTER-MACHINE NETWORK DEVICE
  27. 5.6. ╙WIFT╠INK-232 DEVICE
  28. 5.7. ╙MART╫ATCH DEVICE
  29. 6. ├╧══┴╬─╙
  30. 6.1. ┬UILT-IN COMMANDS
  31. 6.2. ╙YSTEM PROGRAMS
  32. 6.3. ┼XTERNAL PROGRAMS
  33. 7. ╠┴╘┼╥, ─╒─┼
  34. ------------------------------------------------------------------------------
  35.  
  36. 1. ╔╬╘╥╧─╒├╘╔╧╬
  37.  
  38. ┴├┼ IS AN OPERATING SYSTEM FOR THE ├OMMODORE 128 AND ├OMMODORE 64 THAT
  39. PROVIDES A ╒NIX-LIKE COMMAND-SHELL ENVIRONMENT.  ┴LL ┴├┼ PROGRAMS WILL RUN
  40. ON EITHER A ├128 (IN 128 MODE) OR A ├64.  ┬╘╫, "┴├┼" MEANS "┴DVANCED
  41. ├OMPUTING ┼NVIRONMENT" (WELL, ADVANCED FOR THE 128/64).
  42.  
  43. ╧KAY, OKAY, ╔ HAVEN'T DONE ANY WORK ON ┌┼─ YET; ╔ NEEDED SOME MORE
  44. TELECOMMUNICATIONS STUFF DONE FIRST.  ┬UT, ╔'M READY TO WORK ON ┌┼─ NOW.
  45. ╔T'LL BE IN ╥ELEASE #15, ╔ PROMISE.  :-)
  46.  
  47. ╘HIS RELEASE CONTAINS THE FOLLOWING IMPROVEMENTS OVER THE PREVIOUS RELEASE:
  48.  
  49.  - ╞ULL ╓╘-100 ATTRIBUTE CONTROL HAS BEEN ADDED TO THE TERMINAL PROGRAM,
  50.    INCLUDING INTENSITY, UNDERLINE, REVERSE, AND BLINK.  ╘HE ├128 ╓─├ SCREEN
  51.    SUPPORTS ALL OF THESE ATTRIBUTES DIRECTLY; THE ├64 SOFT-80 SUPPORTS
  52.    INTENSITY, REVERSE, AND UNDERLINE DIRECTLY; AND THE 40-COLUMN SCREEN
  53.    SUPPORTS INTENSITY AND REVERSE DIRECTLY (THE LATTER ONLY IF A REVERSABLE
  54.    CHARACTERSET IS USED).  ╬ON-DIRECTLY-SUPPORTED ATTRIBUTES ARE INDICATED
  55.    BY USING VARIOUS DISPLAY COLORS.
  56.  
  57.  - ┴ CAPTURE-BUFFER FEATURE HAS BEEN ADDED TO THE TERMINAL PROGRAM.  ╘HE
  58.    SIZE OF THE CAPTURE BUFFER IS LIMITED ONLY BY THE AMOUNT OF DYNAMIC
  59.    MEMORY YOUR SYSTEM HAS.  ╧NLY ONE SUCH BUFFER IS SUPPORTED AT PRESENT,
  60.    BUT THE CODE IS ORGANIZED TO ALLOW AN ARBITRARILY LARGE NUMBER OF BUFFERS
  61.    IN THE FUTURE.  ┘OUR MODEM WILL HAVE TO SUPPORT ╥╘╙/├╘╙ HARDWARE FLOW
  62.    CONTROL TO AVOID LOSING CHARACTERS WHILE USING THIS FEATURE.  ┴LSO, TO
  63.    HAVE MORE THAN JUST A COUPLE OF ╦ FOR THE CAPTURE BUFFER, YOU MUST HAVE
  64.    EITHER A ├128 OR A ├64 WITH EXPANDED MEMORY.  ╘HIS FEATURE IS DESIGNED
  65.    FOR HIGHER-END 8-BIT ├OMMODORE SYSTEMS.
  66.  
  67.  - ╘HE ABILITY TO COMPOSE ╔╙╧8859-1 CHARACTERS HAS BEEN ADDED TO THE
  68.    TERMINAL PROGRAM, IN ADDITION TO THE ABILITY TO SEND ARBITRARY
  69.    HEXADECIMAL CHARACTER CODES AND A FEW OTHER MISCELLANEOUS FEATURES.
  70.  
  71.  - ╘HE ╙WIFT╠INK DRIVER NOW RECOGNIZES ITS ╔/╧ PAGE ASSIGNMENT, AND WILL
  72.    WORK FROM $─┼00, $─╞00, $─700, OR ANYWHERE ELSE.
  73.  
  74.  - ┴ SIMPLE/EFFICIENT FILE UPLOAD/DOWNLOAD PROTOCOL HAS BEEN IMPLEMENTED,
  75.    "FX".  ┴ CORRESPONDING ┴╬╙╔-├ PROGRAM FOR ╒NIX HOSTS HAS ALSO BEEN
  76.    WRITTEN.  ╘HE PROTOCOL USES A SIMPLE STOP-AND-WAIT ACKNOWLEDGEMENT
  77.    SCHEME, BUT IT IS EFFICIENT BECAUSE IT CAN USE LARGE PACKET SIZES (UP TO
  78.    ▐18╦).  ┴ FULL DESCRIPTION OF THE DESIGN AND IMPLEMENTATION OF THIS
  79.    UTILITY CAN BE FOUND IN ├= ╚ACKING NET-MAGAZINE ╔SSUE #10.  ┴ND OF
  80.    COURSE, THIS CUSTOM FILE-TRANSFER PROTOCOL BLOWS THE COMPETITION AWAY FOR
  81.    SPEED.
  82.  
  83.  - ╘HE ABILITY TO LOAD ALTERNATE CHARACTERSETS HAS BEEN ADDED TO THE
  84.    KERNEL.  ╘WO CHARACTER SETS COME WITH ┴├┼, THE STANDARD ├OMMODORE
  85.    CHARACTER SET AND THE ╔╙╧ 8859-1.  ╘HE "CHRSET" EXTERNAL PROGRAM LETS YOU
  86.    CHANGE THE CHR SET AT ANY TIME, AND A NEW CONFIGURATION OPTION LETS YOU
  87.    SELECT THE INITIAL CHARACTER SET.  ╬OTE THAT IMPLEMENTING THIS FEATURE
  88.    INTO THE KERNEL ALLOWS ALTERNATE CHARACTER SETS TO BE USED WITH ALL
  89.    APPLICATIONS, NOT JUST THE TERMINAL PROGRAM.  ╘HE CHARACTER SETS ARE KEPT
  90.    IN A CUSTOM FORMAT WHICH INCLUDES SOME HEADER INFORMATION, A
  91.    GRAPHIC-CHARACTER PALETTE, AND BOTH 8-BIT-WIDE AND 4-BIT-WIDE (├64
  92.    SOFT-80) CHARACTER IMAGES.  ╔F PEOPLE ARE WILLING TO SEND ME 8-BIT AND
  93.    4-BIT CHARACTER IMAGES FOR FONTS, THEN ╔ WILL BE GLAD TO CONVERT THEM TO
  94.    THE ┴├┼ CHRSET FORMAT.
  95.  
  96.  - ┴ CUSTOM KEY MATRIX CAN BE LOADED IN PLACE OF THE DEFAULT ONE.  ┴
  97.    CONFIGURATION FILENAME HAS BEEN ADDED FOR THIS PURPOSE; LEAVE IT BLANK TO
  98.    USE THE DEFAULT.  ┘OU CAN ALSO USE THE NEW "KEYMAT" COMMAND TO LOAD
  99.    THEM.  ┴ SAMPLE ALTERNATIVE KEY MATRIX "ACEKEY-DVORAK" HAS BEEN
  100.    PROVIDED.
  101.  
  102.  - ╘HE ╓┬═ VIWER PROGRAM HAS BEEN ENHANCED TO PROVIDE MORE COMMANDS FOR
  103.    CONVENIENTLY SCROLLING AROUND INSIDE OF A LARGE IMAGE, AND A MORE
  104.    ADVANCED IMAGE FORMAT (VERSION #3) HAS BEEN IMPLEMENTED THAT PROVIDES
  105.    RUN-LENGTH DATA COMPRESSION FOR ╓┬═ IMAGES (WHICH GIVES, ON AVERAGE,
  106.    ABOUT 29% COMPRESSION OF OLDER VERSION #2 IMAGES).  ╘HERE IS ALSO AN
  107.    "UNCOMPRESSED" OPTION FOR VERSION #3 IMAGES THAT WILL ALLOW THEM TO BE
  108.    DISPLAYED FASTER (IF THEY ARE BEING PULLED FROM A HIGH-SPEED DISK
  109.    DEVICE).  ╓ERSION #2 IMAGES ARE STILL SUPPORTED.  ┴LSO, A ├ PROGRAM FOR
  110.    CONVERTING TO/FROM ╓┬═, ╨┬═, AND ╪┬═ FORMATS HAS BEEN WRITTEN.
  111.  
  112.  - ┴ CONVENIENT CONFIGURATION-SELECTION MECHANISM HAS BEEN ADDED.  ┘OU JUST
  113.    HAVE TO CHANGE THE CONFIGURATION NUMBER ON THE FIRST LINE OF THE "ACE"
  114.    ┬┴╙╔├ PROGRAM TO BE THE CONFIGURATION NUMBER THAT YOU WANT (NORMALLY 1)
  115.    AND ┴├┼ WILL USE THE CONFIGURATION IN FILE ".ACERC╬", WHERE ╬ IS THE
  116.    NUMBER THAT YOU ASKED FOR.  ╞OR CONFIGURATION #1, JUST ".ACERC" IS USED.
  117.  
  118.  - ┴N OPTION FOR SELECTING ╥┴╫/╨┴├╦┼╘-ORIENTED COMMUNICATION OVER THE ╒SER-
  119.    ╨ORT NETWORK DEVICE HAS BEEN ADDED.  ╘HIS SHOULD ALLOW YOU TO USE
  120.    PRINTERS THAT ARE CONNECTED DIRECTLY TO THE USER PORT (ALTHOUGH ╔ HAVEN'T
  121.    TESTED THIS SINCE ╔ DON'T HAVE THE HARDWARE).
  122.  
  123.  - ╘HE BOOTSTRAPPING PROGRAM ("CONFIG") CAN NOW READ THE INITIAL SYSTEM TIME
  124.    FROM A ╙MART╫ATCH DEVICE RIGGED INTO JOYSTICK PORT #1 ACCORDING TO ╥ANDY
  125.    ╫EEMS' PLANS.  ╙ET A REAL-TIME CLOCK DEVICE TO #254 IN THE "CONFIG.EDIT"
  126.    PROGRAM TO USE THE ╙MART╫ATCH DEVICE.  ┴LSO, THE TIME-GET CALL WILL
  127.    INCREMENT THE CURRENT DATE BETWEEN CALLS WHEN THE HOUR WRAPS AROUND.  ╘HE
  128.    ALGORITHM IS PRETTY DUMB AND WILL INCREMENT ONLY THE DATE AND WILL NOT
  129.    PROPAGATE THE INCREMENT TO THE MONTH OR YEAR, AND REQUIRES YOU TO READ
  130.    THE TIME AT LEAST ONCE A DAY IN ORDER NOT TO MISS A DATE.
  131.  
  132.  - ╘HE "TR" CHARACTER-SET TRANSLATION UTILITY HAS BEEN EXTENDED TO PROVIDE
  133.    AN OPTION FOR TRANSLATING FILES "IN-PLACE".  ╔T WILL COPY TO A TEMPORARY
  134.    FILE AND THEN COPY BACK OVERWRITE THE ORIGINAL FILE WITH THE TRANSLATED
  135.    VERSION.  ╘HE TEMPORARY DIRECTORY TO USE IS SET AS A CONFIGURATION
  136.    OPTION.
  137.  
  138.  - ┴ "HEAD" FILE UTILITY HAS BEEN ADDED FOR DISPLAYING THE FIRST ╬ LINES OF
  139.    NAMED FILES.  ╘HIS PROGRAM WAS WRITTEN BY ╩AKE ╚AMBY.
  140.  
  141.  - ┴LSO, SOME BUGS HAVE BEEN CORRECTED.  ╙CROLLING THE 40-COLUMN SCREEN WITH
  142.    CONSOLE-COLOR SCROLLING ENABLED WOULD REALLY SCROLL THE ╥┴═ UNDERNEATH
  143.    THE COLOR MEMORY, PROBABLY CORRUPTING ╥┴═DISK FILES.  ╚OWEVER, THE
  144.    PREVIOUS RELEASE DID NOT ALLOW CONSOLE COLORS TO BE ACTIVATED AND NO
  145.    APPLICATIONS ACTUALLY SCROLLED COLORS, SO THERE WAS NO DANGER TO USERS.
  146.    ┴NOTHER BUG WAS FIXED THAT DIDN'T ALLOW YOU TO USE ╥╒╬/╙╘╧╨-╥┼╙╘╧╥┼ AFTER
  147.    THE ╙WIFT╠INK DEVICE HAD BEEN ACTIVATED.  ┴NOTHER FIXED BUG PREVENTED THE
  148.    SUPPRESSION OF THE SHELL PROMPT WHEN EXECUTING COMMANDS SEPARATED BY
  149.    SEMICOLONS.  ┴NOTHER ALLOWED THE ╙╘╧╨ KEY TO STOP B-LOADING OF PROGRAMS.
  150.    ╬OW, ONLY B-LOADING FROM THE ╥┴═╠INK DEVICE WILL BE STOPPED BY THE ╙╘╧╨
  151.    KEY, PRESUMABLY BECAUSE IT DOESN'T USE THE ╙╘╧╨-CHECK VECTOR LIKE IT
  152.    SHOULD.  ┴NOTHER BUG WAS THAT IF YOU RENAMED A FILE ON THE RAMDISK, THE
  153.    LENGTH OF THE NEW FILENAME WAS NOT RECORDED AND THE LENGTH OF THE OLD
  154.    FILENAME WAS USED, SO IF YOU TRIED TO DO A WILDCARD EXPANSION WITH A
  155.    PATTERN "*.XXX", THEN IT ONLY MATCHED THE NAMES THAT WERE THE SAME LENGTH
  156.    AS THE OLD NAME; FIXED.
  157.  
  158. ╘HIS DISTRIBUTION CONSISTS OF THE FOLLOWING FILES.  ╙YSTEM FILES:
  159.  
  160. ACE              - THE KERNEL BOOTSTRAPPER; RUNNABLE FROM EITHER 64 OR 128 MODE
  161. ACE128           - THE KERNEL FOR THE ├128
  162. ACE64            - THE KERNEL FOR THE ├64
  163. CONFIG           - THE CONFIGURATION-INITIALIZER PROGRAM
  164. .ACERC           - THE SYSTEM CONFIGURATION - THIS IS DATA NOT AN EXECUTABLE
  165. CONFIG.EDIT      - CONFIGURATION-EDITOR PROGRAM (WRITTEN IN ┬┴╙╔├)
  166. ACECHR-COMMODORE - REGULAR ├OMMODORE CHARACTER SET
  167. ACECHR-ISO8859-1 - ╔╙╧ 8859-1 "8-BIT" CHARACTER SET
  168. ACEKEY-QWERTY    - REGULAR QWERTY KEY MATRIX (ALSO BUILT IN)
  169. ACEKEY-DVORAK    - ─VORAK KEY MATRIX
  170. SH               - THE COMMAND SHELL (REALLY AN APPLICATION PROG)
  171. .ASHRC           - THE ┴├┼ COMMAND SHELL AUTO-EXECUTION SHELL SCRIPT
  172.  
  173. ┴PPLICATION PROGRAMS (EXPLAINED IN ╙ECTION 6.3):
  174.  
  175. CP          - COPY FILES
  176. RM          - REMOVE FILES (SCRATCH)
  177. MV          - RENAME FILES (NAMED FOR ╒NIX "MV"=="MOVE")
  178. MKDIR       - CREATE A NEW DIRECTORY (FLAT NAME)
  179. RMDIR       - REMOVE AN EXISTING EMPTY DIRECTORY (FLAT NAME)
  180. WC          - COUNT WORDS, LINES, CHARACTERS OF FILES
  181. GREP        - SEARCH FOR A SUBSTRING IN FILES (FROM ╒NIX "GREP")
  182. TR          - TRANSLATE FROM ONE CHARACTER SET TO ANOTHER
  183. SORT        - SORT LINES OF FILES
  184. WRAP        - WRAP LINES LONGER THAN 75 CHARACTERS
  185. DATE        - DISPLAY CURRENT DATE AND TIME
  186. FORTY       - SWITCH TO 40-COL SCREEN, SLOW MODE
  187. EIGHTY      - SWITCH TO 80-COL SCREEN, FAST MODE ON 128, OR SOFT-80 ON 64
  188. READ        - READ FILES (FOR TESTING)
  189. MEM         - DISPLAY AVAILABLE DYNAMIC AND TRANSIENT-PROGRAM-AREA MEMORY
  190. HELLO       - DUMB LITTLE "HELLO WORLD" EXAMPLE PROGRAM
  191. WINDOW      - SET THE CURRENT WINDOW DIMENSIONS
  192. CHRSET      - CHARACTERSET LOADER
  193. KEYMAT      - KEY-MATRIX LOADER
  194. HEAD        - DISPLAY THE FIRST ╬ LINES OF A FILE, DONATED BY ╩AKE ╚AMBY
  195.  
  196. MORE        - FULL-SCREEN FILE VIEWER
  197. UUENCODE    - ENCODE FILES INTO UUENCODED FORMAT
  198. UUDECODE    - DECODE FILES FROM UUENCODED FORMAT
  199. BCODE       - ENCODE FILES INTO ┬├╧─┼ FORMAT
  200. UNBCODE     - DECODE FILES FROM ┬├╧─┼ FORMAT
  201. CRC32       - DISPLAY ├╥├-32 *┬* VALUES FOR FILES (NEW STANDARD)
  202. CRC32A      - DISPLAY ├╥├-32 *┴* VALUES FOR FILES (OLD STANDARD)
  203. KAR         - ╦┴╥ (╦EVIN'S ┴╥CHIVER) FILE ARCHIVER (ALL-TEXT FORMAT)
  204. UNKAR       - ╦┴╥ (╦EVIN'S ┴╥CHIVER) FILE DEARCHIVER
  205. Z           - ─┼═╧ "┌ED" TEXT EDITOR: DISPLAYS SCREEN, LOADS AND PRINTS FILE
  206. VBM         - ╓┬═ BITMAP-FILE VIEWER
  207. VBMPR       - ╓┬═ BITMAP-FILE (V.2 ONLY) PRINTER FOR ┼PSON-COMPATIBLE PRINTERS
  208. AS          - ONE-PASS ASSEMBLER
  209. TERM        - SIMPLE ╓╘-100 TERMINAL-EMULATION PROGRAM
  210. FX          - CUSTOM ╞ILE E╪CHANGE (UPLOAD/DOWNLOAD) PROGRAM
  211.  
  212. ╘HESE BINARY PROGRAMS ARE SUPPLIED IN ┬├╧─┼D ARCHIVE FORMAT.  ╘HE "UNBCODE"
  213. PROGRAM INCLUDED HERE WILL DECODE THIS FORMAT OF ARCHIVE, BUT THIS IS A
  214. ├ATCH-22, SO YOU WILL HAVE TO EITHER USE A PREVIOUS RELEASE OF ┴├┼ TO DECODE
  215. THIS RELEASE, OR YOU'LL HAVE TO GET THE ├-LANGUAGE "UNBCODE" PROGRAM FOR
  216. ╒NIX AND ═╙-─╧╙.  ╔ USED TO DISTRIBUTE THE BINARIES IN UUENCODED FORMAT, BUT
  217. ╔ HAVE SWITCHED TO ┬├╧─┼ FORMAT SO THAT PEOPLE WILL NOT ACCIDENTALLY CORRUPT
  218. THEIR DOWNLOADS (AND FOR POLITICAL REASONS).  ╘HE FILES MAY ALSO BE
  219. AVAILABLE IN ".╙╞╪" FORMAT TOO, SOMETIME.
  220.  
  221. ╬OTE THAT THE "ACE128" AND "ACE64" PROGRAMS ARE FUNCTIONALLY IDENTICAL,
  222. EXCEPT THAT ONE IS SET UP FOR THE 128 AND THE OTHER FOR THE 64.  ╘HUS, ALL
  223. OF THE APPICATION BINARY PROGRAMS WILL WORK WITH EITHER "ACE128" OR
  224. "ACE64".  ╠╧┴─ AND ╥╒╬ THE "ACE" PROGRAM AND IT WILL LOAD THE CORRECT
  225. "KERNEL" FOR YOUR COMPUTER.  ╧R, YOU CAN CHANGE THE FIRST LINE OF THE "ACE"
  226. PROGRAM TO LOAD A DIFFERENT SYSTEM CONFIGURATION AND SAVE IT WITH A NAME
  227. LIKE "ACE-BIGMEM" OR SOMETHING, AND RUN THAT WHEN YOU WANT TO USE THE
  228. ALTERNATE SYSTEM CONFIGURATION.
  229.  
  230. ╘HE ┬UDDY- AND ┴├┼-┴SSEMBLER SOURCE CODE FILES ARE ALSO PUBLICLY AVAILABLE
  231. IN ".╦┴╥" FORMAT.  ═OST PROGRAMS ARE STILL IN ┬UDDY FORMAT BUT THEY ARE
  232. SLOWLY MIGRATING TO THE ┴├┼-┴SSEMBER ("┴├┼MBLER...??") FORMAT (THE FORMATS
  233. ARE SUBSTANTIALLY SIMILAR).  ╙EE THE "ACE╬╬-FILES.DOC" DOCUMENTATION FILE
  234. FOR A LIST OF THE VARIOUS FILES THAT ARE AVAILABLE.
  235. ------------------------------------------------------------------------------
  236. 2. ╒╙╔╬╟ ╘╚┼ ╙┘╙╘┼═
  237.  
  238. ╫HEN ┴├┼ STARTS, IT LOADS AND EXECUTES THE COMMAND SHELL (AMONG OTHER THINGS),
  239. GIVES YOU A PROMPT AND WAITS FOR YOU TO GIVE IT A COMMAND.  ┴ COMMAND HAS THE
  240. FOLLOWING FORMAT:
  241.  
  242. PROGRAMNAME ARG1 ARG2 ... ARG╬
  243.  
  244. ╘HE PROGRAMNAME CAN BE ANY OF THE FOLLOWING BUILT-IN COMMANDS (COVERED IN
  245. ╙ECTION 6.1):
  246.  
  247. ECHO       - PRINT THE GIVEN ARGUMENTS TO STDOUT
  248. CLEAR      - CLEAR THE SCREEN
  249. CLS        - SAME AS "CLEAR"
  250. DIR        - CLEAR THE SCREEN AND GIVE A LONG-FORM DIRECTORY LISTING
  251. D          - SAME AS "DIRECTORY", BUT NO CLEAR SCREEN
  252. LS         - GIVE A MULTI-COLUMN SHORT-FORM DIRECTORY LISTING
  253. CLSL       - COMBINATION OF "CLS" AND "LS"
  254. CD         - CHANGE THE CURRENT WORKING DEVICE/DIRECTORY
  255. CAT        - DISPLAY THE NAMED FILES TO STDOUT
  256. EXIT       - EXIT FROM THE COMMAND SHELL (PERHAPS BACK TO ┬┴╙╔├)
  257. X          - SAME AS "EXIT"
  258. DOS        - GIVE A ├OMMODORE DOS COMMAND TO THE CURRENT DEVICE (╧╨┼╬1,DV,15..)
  259. @          - SAME AS "DOS"
  260. PATH       - SET THE PATH TO SEARCH FOR EXTERNAL PROGRAMS
  261. SH         - INVOKE THE SHELL AGAIN AS A SUB-SHELL
  262.  
  263. OR PROGRAMNAME CAN BE FOR ANY OF THE EXTERNAL PROGRAMS PROVIDED WITH THIS
  264. DISTRIBUTION.  ┘OU'LL HAVE TO FORGIVE MY PERSONAL TASTE IN COMMAND NAMES AND
  265. ABBREVIATIONS (UNTIL THE "ALIAS" SHELL FEATURE IS FINALLY IMPLEMENTED).
  266.  
  267. 2.1. ╔╬╨╒╘/╧╒╘╨╒╘ ╥┼─╔╥┼├╘╔╧╬
  268.  
  269. ╘HE THREE ╒NIX STANDARD FILES ARE SUPPORTED:
  270.  
  271. STDIN    - WHERE THE DEFAULT INPUT COMES FROM (USUALLY THE KEYBOARD)
  272. STDOUT   - WHERE THE DEFAULT OUTPUT GOES TO (USUALLY THE SCREEN)
  273. STDERR   - WHERE ERROR MESSAGES ARE SENT TO (USUALLY THE SCREEN)
  274.  
  275. ╘O TEMPORARALLY REDIRECT THESE STANDARD FILE STREAMS FOR THE EXECUTION OF A
  276. COMMAND, YOU CAN USE THE FOLLOWING INCANTATIONS ON A COMMAND LINE:
  277.  
  278. <INFILE     - REDIRECT STDIN - INPUT TAKEN FROM "INFILE"
  279. >OUTFILE    - REDIRECT STDOUT - OUTPUT PUT INTO FILE "OUTFILE"
  280. >>OUTFILE   - REDIRECT STDOUT - SAME AS ">" BUT THE OUTPUT IS APPENDED TO FILE
  281. >&ERRFILE   - REDIRECT STDERR - ERROR OUTPUT IS PUT INTO "ERRFILE"
  282. >>&ERRFILE  - REDIRECT STDERR - ERROR OUTPUT IS APPENDED TO FILE "ERRFILE"
  283.  
  284. ─O NOT PUT A SPACE BETWEEN THE REDIRECTION SYMBOL(S) AND THE FILE NAME.
  285.  
  286. 2.2. ╨┴╘╚╬┴═┼╙
  287.  
  288. ╫HENEVER YOU SPECIFY A FILE, YOU USE A "PATHNAME".  ╨ATHNAMES HAVE THE
  289. FOLLOWING OPTIONAL PARTS:
  290.  
  291. [DEVICE:][RAMLINK-DIRECTORY:][FILENAME]
  292.  
  293. ─EVICE NAMES ARE SET BY THE USER IN THE CONFIGURATION FILE, BUT THE FACTORY
  294. DEFAULTS ARE:
  295.  
  296. "A:"  - ├OMMODORE DISK DEVICE #8 - INPUT/OUTPUT
  297. "B:"  - ├OMMODORE DISK DEVICE #9 - FOR IF YOU HAVE >1 DRIVE
  298. ....  - ├OMMODORE DISK DEVICES #10 TO #16
  299. "J:"  - ├OMMODORE DISK DEVICE #17 - A DISK DRIVE
  300. "K:"  - ├USTOM DEVICE DRIVER: THE KEYBOARD (OR SCREEN)
  301. "M:"  - ├USTOM DEVICE DRIVER: ╥AMDISK
  302. "N:"  - ├USTOM DEVICE DRIVER: "NULL" DEVICE
  303. "P:"  - ├OMMODORE DEVICE #4 - THE PRINTER, WITH ╙EC┴DDR 7 - OUTPUT ONLY
  304. "Q:"  - ├OMMODORE DEVICE #4 - THE PRINTER, WITH ╙EC┴DDR 5 - TRANSPARENT MODE
  305. "S:"  - ├USTOM DEVICE DRIVER: THE SCREEN (OR KEYBOARD)
  306. "U:"  - ├USTOM DEVICE DRIVER: USER-PORT INTER-MACHINE NETWORK/PAR-PRINT CABLE
  307. "X:"  - ├USTOM DEVICE DRIVER: MODEM ("TO THE E╪TERNAL WORLD") (╙WIFT╠INK-232)
  308. "Z:"  - ├USTOM DEVICE DRIVER: ╥AMDISK - INTENDED FOR STORING EXECUTABLES
  309. ".:"  - THE "CURRENT" DISK DEVICE
  310.  
  311. ├═─ ╥┴═╠INK (OR ├═─ ╚ARD─RIVE) DIRECTORY NAMES HAVE THE FOLLOWING FORMATS:
  312.  
  313. //DIR/:            - A SUBDIRECTORY OF THE ROOT DIRECTORY
  314. /DIR/:             - A SUBDIRECTORY OF THE CURRENT DIRECTORY
  315. 4//DIR/DIR/DIR/:   - A SUB-PATH OF THE ROOT DIRECTORY OF PARTITION #4
  316. /DIR/DIR/DIR/:     - A SUB-PATH OF THE CURRENT DIRECTORY
  317.  
  318. ┴ND FILENAMES HAVE THE USUAL ├OMMODORE FORMAT OF 1 TO 16 CHARACTERS.
  319.  
  320. ╘HUS, THE FOLLOWING ARE VALID PATHNAMES FOR FILES:
  321.  
  322. K:                   - THE KEYBOARD FOR INPUT
  323. P:                   - THE PRINTER FOR OUTPUT
  324. B:FILE1              - "FILE1" ON DISK DEVICE #9
  325. .:FILE1              - "FILE1" ON THE CURRENT DISK DEVICE
  326. FILE1                - "FILE1" ON THE CURRENT DISK DEVICE
  327. /DIR1/:FILE1         - "FILE1" IN THE ╥AM╠INK SUBDIRECTORY "DIR1", CUR. DEVICE
  328. A://DIR1/DIR2/:FILE1 - "FILE1" IN THE ╥AM╠INK SUBDIR "//DIR1/DIR2", DEVICE #8
  329.  
  330. ┴ND THE FOLLOWING ARE VALID PATHNAMES FOR DIRECTORIES:
  331.  
  332. A:             - DISK DEVICE #8 CURRENT DIRECTORY
  333. .:             - CURRENT DISK DEVICE'S CURRENT DIRECTORY
  334. .://DIR1/:     - "DIR1" OFF THE ROOT DIRECTORY OF THE CURRENT ╥AM╠INK DEVICE
  335. /DIR1/DIR2/:   - SUBDIRECTORY "/DIR1/DIR2" OF THE CURRENT ╥AM╠INK DEVICE
  336.  
  337. ╬OTE THAT A DIRECTORY NAME ALWAYS ENDS WITH A ":".
  338.  
  339. ┘OU MAY APPEND A ",P" OR ",S" OR ",U" TO A FILENAME TO SPECIFY WHETHER A
  340. ╨╥╟, ╙┼╤, OR ╒╙╥ FILE SHOULD BE ACCESSED/CREATED.  ┬Y DEFAULT, ┴├┼ WILL
  341. CREATE ╙┼╤ FILES.
  342.  
  343. ┬╘╫, TO GENERATE AN ┼╧╞ FOR KEYBOARD INPUT, SIMPLY PRESS ├ONTROL-─.  ╧NLY DO
  344. THIS AT THE BEGINNING OF A BLANK LINE.
  345.  
  346. 2.3. ├╧══┴╬─-╙╚┼╠╠ ┴╥╟╒═┼╬╘╙
  347.  
  348. ┴RGUMENTS THAT CONTAIN SPACES MUST BE PUT INTO QUOTES.  ═ULTIPLE QUOTED
  349. STRINGS CAN BE PLACED SIDE-BY-SIDE TO PRODUCE A LONGER STRING.  ╘HE
  350. FOLLOWING ARE EXAMPLES OF VALID COMMAND SHELL ARGUMENTS:
  351.  
  352. HELLO                                  -  HELLO
  353. 'HELLO'                                -  HELLO
  354. "HELLO THERE"                          -  HELLO THERE
  355. 'HELLO THERE'                          -  HELLO THERE
  356. 'SHE SAID, "HOW'"'S THAT"'"'' TO ME.'  -  SHE SAID, "HOW'S THAT" TO ME.
  357.  
  358. ├OMMAND SHELL ARGUMENTS ARE SEPARATED BY SPACES OR TAB CHARACTERS.
  359.  
  360. 2.4. ┼╪╘┼╥╬┴╠-├╧══┴╬─ ╙┼┴╥├╚ ╨┴╘╚
  361.  
  362. ╘HE "PATH" COMMAND SETS OR DISPLAYS THE CURRENT SEARCH PATHNAMES FOR
  363. EXTERNAL PROGRAMS.  ┬Y DEFAULT THE PATHS TO SEARCH ARE "Z:" AND "A:".  ╘HE
  364. PATH CONSISTS OF MULTIPLE DIRECTORY NAMES TO BE CHECKED, IN ORDER, FOR EACH
  365. BINARY EXECUTABLE OR SHELL SCRIPT THAT YOU GIVE THAT DOES NOT HAVE A
  366. PATHNAME PREFIX.
  367.  
  368. 2.5. ╫╔╠─├┴╥─╙
  369.  
  370. ╒NIX-STYLE WILDCARD EXPANSION IS SUPPORTED.  ╫HEN YOU ENTER AN ARGUMENT WITH
  371. AN ASTERISK IN THE FILENAME COMPONENT OF THE PATHNAME, THE COMMAND SHELL
  372. WILL AUTOMATICALLY EXPAND THAT NAME INTO AN ARGUMENT FOR EACH FILE IN THE
  373. SPECIFIED DIRECTORY THAT MATCHES THAT PATTERN.  ╘HE EXPANDED ARGUMENTS ARE
  374. THEN PASSED ONTO THE COMMAND YOU ARE INVOKING AS IF YOU HAD TYPED THEM ALL
  375. IN YOURSELF.  ╞OR EXAMPLE:
  376.  
  377. ┴╥╟╒═┼╬╘            ┼╪╨┴╬╙╔╧╬
  378. --------            ---------
  379. *                   FILE1 PROG1,P PROG2,P
  380. CH*                 CHESS,P CHINESE_CHECKERS,P
  381. *.BIN               MAIN.BIN,P DATA.BIN ANAGRAM.BIN
  382. A*N                 ANAGRAM.BIN AN ANOTHER_PLAN
  383. B:*.BIN             B:MAIN.BIN,P B:DATA.BIN B:ANAGRAM.BIN
  384. C://GAMES/:A*.BIN   C://GAMES/:ACROBAT.BIN,P C://GAMES/:ACRODATA.BIN
  385.  
  386. ┘OU'LL NOTE THAT PROGRAM FILES ARE EXPANDED TO INCLUDE A ",P".  ╔F A PATTERN
  387. DOES NOT EXPAND TO ANYTHING, AN ERROR MESSAGE IS DISPLAYED AND THE SHELL
  388. COMMAND IS NOT EXECUTED.  ┘OU'LL HAVE TO CURSOR-UP AND CHANGE THE COMMAND.
  389. ┘OUR FILENAME PATTERN CAN INCLUDE ONLY ONE ASTERISK (ANYWHERE IN THE NAME).
  390.  
  391. ╙OME EXAMPLE USES OF WILDCARD EXPANSION WITH THE PROVIDED UTILITIES FOLLOW:
  392.  
  393. CP B:* A:
  394. CP //GAMES/C64/:CHESS*.BIN SOMEFILE B://GAMES/:
  395. WC *.ASM *.C
  396. ------------------------------------------------------------------------------
  397. 3. ╙┘╙╘┼═ ├╧╬╞╔╟╒╥┴╘╔╧╬
  398.  
  399. ╘HE PROGRAM ENTITLED "CONFIG.EDIT" IS USED FOR EDITING THE SYSTEM
  400. CONFIGURATION.  ╘HE SYSTEM WILL BE CONFIGURED ACCORDING TO THE DATA IN THE
  401. FILE ".ACERC" EVERY TIME IT STARTS UP.  ╬OTE THAT ".ACERC" IS A LOADABLE
  402. BINARY ╨╥╟ FILE; IT IS NOT IN TEXT FORMAT AND IS NOT MEANT TO BE EDITED WITH A
  403. TEXT EDITOR.
  404.  
  405. ╘HE FOLLOWING DATA IS INCLUDED IN THE ".ACERC" FILE:
  406.  
  407. ╧╞╞  ╙╔┌  ─┼╙├
  408. ---  ---  ----
  409. $00  128  DEVICE DESCRIPTORS, 32 ENTRIES OF FOUR BYTES EACH.
  410.           [╞OR EACH ENTRY, OFFSETS: 0=DEVICE DRIVER TYPE, 1=DEVICE ADDRESS,
  411.            2=SECONDARY ADDRESS, 3=FLAGS.  ─ESCRIBED FURTHER BELOW.]
  412. $80    1  RAMLINK DEVICE NUMBER
  413.           [╘HE KERNEL DEVICE NUMBER OF YOUR ╥┴═╠INK.  ╘HE DEFAULT ╥╠ DEVICE
  414.            NUMBER IS 16.]
  415. $81    1  RAMLINK LAST LOGICAL BANK ALLOWED TO USE PLUS ONE (NORM 255)
  416.           [╞OR THE ╥┴═╠INK MEMORY PARTITION (NEXT SECTION), THE MAXIMUM
  417.            NUMBER OF 64╦ CHUNKS THAT CAN BE USED FOR DYNAMIC MEMORY.]
  418. $82    4  REAL-TIME CLOCK DEVICES TO CHECK [4], 255=UNUSED, 254=╙MART╫ATCH
  419.           [╘HESE ARE THE KERNEL DEVICE NUMBERS OF ├═─ DISK DRIVE UNITS THAT
  420.            HAVE A BUILT-IN REAL-TIME CLOCK TO CHECK FOR THE CURRENT TIME.  ╔F
  421.            THE FIRST ENTRY FAILS, THEN THE SECOND WILL BE TRIED, ETC., UNTIL
  422.            THE FOURTH ENTRY IS TRIED.  ╔F ALL DEVICES FAIL TO RETURN A TIME,
  423.            THEN THE DEFAULT DATE IS USED (NEXT).  ┴ VALUE OF 255 IN AN ENTRY
  424.            MEANS TO TRY THE NEXT ENTRY.  ┴ VALUE OF 254 IN AN ENTRY MEANS TO
  425.            TRY TO READ THE TIME FROM THE ╙MART╫ATCH DEVICE PLUGGED INTO
  426.            JOYSTICK PORT #1.  ┴├┼ USES THE ╘╧─ CLOCK OF ├╔┴#1 TO KEEP TIME.
  427.            ╘HE DATE IS STORED IN A REGULAR MEMORY FIELD AND IS NOT ROLLED ON
  428.            A 24-HOUR ╘╧─ CLOCK WRAP-AROUND.]
  429. $86    1  SCREEN SAVER ACTIVATION TIME, IN MINUTES (NORM 10)
  430.           [╘HE SCREEN WILL GO BLACK WHEN THE SCREEN SAVER IS ACTIVATED, AFTER
  431.            A PERIOD WHERE YOU HAVE NOT PRESSED ANY KEY FOR THE SPECIFIED TIME,
  432.            UNTIL YOU PRESS A KEY (INCLUDING THE ANY OF THE SHIFT KEYS).  ╔F
  433.            YOU PRESS ANY CHARACTER KEY, THAT KEY WILL APPEAR IN YOUR INPUT.
  434.            ╬ORMAL PROCESSING WILL CONTINUE IN THE BACKGROUND, WHILE THE SCREEN
  435.            SAVER IS ACTIVE, INCLUDING PRINTING TO THE SCREEN.  ╘HIS TIME IS IN
  436.            MINUTES.  ┴ VALUE OF ZERO MEANS TO DISABLE THE SCREEN SAVER.  ╘HE
  437.            SCREEN SAVER IS NOW ACTIVE FOR THE 40-COLUMN AND 80-COLUMN
  438.            DISPLAYS.]
  439. $87    1  ╥╘╙ ASSERTION-TO-MODEM-ACCEPTANCE DELAY PERIOD (NORM. 40)
  440.           [╘HIS VALUE GIVES A "FUDGE FACTOR" FOR THE ╙WIFT╠INK DRIVER FOR
  441.            CONTROLLING THE HARDWARE FLOW CONTROL.  ╙INCE ├OMMODORE COMPUTERS
  442.            CANNOT DO DISK ╔/╧ AND PROCESS ╙WIFT╠INK INTERRUPTS AT THE SAME
  443.            TIME, IT IS NECESSARY TO TURN INTERRUPTS OFF DURING ╔/╧.  ╘HIS
  444.            MEANS THAT IF MORE THAN ONE CHARACTER SHOWS UP WHILE INTERRUPTS
  445.            ARE DISABLED, THEN DATA WILL BE LOST.  ╘HE FUDGE FACTOR IS THE
  446.            PERIOD THAT ┴├┼ DELAYS BETWEEN ASSERTING THE ╥╘╙ FLOW-CONTROL
  447.            SIGNAL AND DISABLING INTERRUPTS.  ╘HE VALUE HAS NO PARTICULAR
  448.            MEANING, JUST THE NUMBER OF TIMES THAT A PARTICULAR BUSY-WAITING
  449.            LOOP IN THE ╙╠ DRIVER IS EXECUTED.  ╔F YOU ARE LOSING OCCASIONAL
  450.            CHARACTERS DURING BUFFER CAPTURING IN THE TERMINAL PROGRAM AND
  451.            YOU HAVE THE MODEM CONFIGURED PROPERLY FOR ╥╘╙/├╘╙ FLOW CONTROL,
  452.            THEN YOU MIGHT TRY INCREASING THIS VALUE TO SEE IF THAT SOLVES
  453.            THE PROBLEM.  ╫ITH MY ╒╙╥ 28.8 MODEM, A VALUE OF 10 WORKS JUST
  454.            FINE, BUT ╔'VE FUDGED THE FUDGE TO BE SAFE HERE.]
  455. $90   12  DEFAULT DATE AND TIME ┘┘:┘┘:══:──:╚╚:══:╙╙:╘╘:╘╫:╟╟:GG:┴┴
  456.           [╘HE DEFAULT DATE TO USE IF ATTEMPTS TO ACCESS THE CURRENT TIME
  457.            FROM ├═─ DISK DEVICES/╙MART╫ATCH FAIL.  ╞ORMAT IS 24-HOUR ┬├─.
  458.            ┴LL FOUR DIGITS OF THE YEAR ARE GIVEN.  ╘HE "╘╘" FIELD IS WHERE
  459.            YOU PUT THE _HUNDREDTHS_ OF SECONDS (I.E., THE TENTHS GO INTO THE
  460.            UPPER DIGIT).  ╘HE "╘╫" FIELD IS WHERE YOU PUT THE DAY OF THE
  461.            WEEK: 0 MEANS ╙UNDAY, 1 MEANS ═ONDAY, ..., 6 MEANS ╙ATURDAY, AND
  462.            7 MEAND "UNKNOWN".  ╘HE "╟╟" FIELD IS WHERE YOU PUT THE NUMBER OF
  463.            HOURS THAT YOUR TIME ZONE IS OFF FROM ╟═╘.  ╬EGATIVE VALUES ARE
  464.            ENTERED BY ADDING 80 TO THE NUMBER OF HOURS (SETTING THE HIGH BIT
  465.            OF THE ┬├─ VALUE).  ╞OR EXAMPLE, ┼─╘ (WHERE ╔ AM) IS OFF BY -4
  466.            HOURS FROM ╟═╘, SO ╔ WOULD ENTER 84.  ┴ VALUE OF 99 MEANS
  467.            "UNKNOWN".  ╘HE "GG" FIELD IS WHERE YOU ENTER THE NUMBER OF
  468.            MINUTES YOU ARE OFF FROM ╟═╘, IF YOU ARE NOT OFF BY AN EVEN
  469.            NUMBER OF HOURS.  ╘HIS IS ALWAYS A POSITIVE VALUE.  ╘HE "┴┴"
  470.            FIELD IS WHERE YOU ENTER THE ACCURACY OF YOUR CLOCK WITH RESPECT
  471.            TO THE ACTUAL REAL TIME.  ╘HESE TIME-ZONE/ACCURACY FIELDS ARE
  472.            USED EVEN IF YOU PULL THE TIME FROM A ├═─/╙MART╫ATCH DEVICE, SO
  473.            SET THE ACCURACY ACCORDING TO WHERE THE TIME WILL USUALLY
  474.            COME FROM.  ╘HE ACCURACY WILL BE INTERPRETED AS 2^┴┴ IN
  475.            MILLISECONDS, SO A VALUE OF 10 WOULD MEAN +/- ABOUT A SECOND.  ┴
  476.            VALUE OF 99 MEANS "UNKNOWN".  ╧R, IF YOU DON'T WANT TO BOTHER,
  477.            IT'S NOT REALLY VERY IMPORTANT THAT YOU FILL THIS TIMEZONE/
  478.            ACCURACY INFORMATION IN.  ╘HE FACTORY-SET VALUE OF THIS FIELD
  479.            IS 12AM, ╙UNDAY, ╩AN 1, 1995., WITH UNKNOWN TIMEZONE AND
  480.            ACCURACY.]
  481. $9├    4  ╙TRING: NAME OF YOUR TIME ZONE: UP TO THREE CHARS PLUS NULL
  482.           [╘HIS IS ADDED JUST FOR OFFICIALNESS.  ╘HE DEFAULT VALUE IS "╪╪╪",
  483.            WHICH MEANS 'UNKNOWN'.]
  484. $┴0    1  ├128 BANK1 START FREE PAGE (NORM $04)
  485.           [╘HIS FIELD AND THE NEXT DEFINE THE PAGES OF ╥┴═1 THAT ┴├┼ IS ALLOWED
  486.            TO USE.  ╘HIS MUST INCLUDE AT LEAST ONE PAGE.]
  487. $┴1    1  ├128 BANK1 LAST FREE PAGE PLUS ONE (NORM $FF)
  488. $┴2    1  ├128 EXPANDED INTERNAL MEMORY TYPE
  489.           [╬OT CURRENTLY USED.]
  490. $┴3    1  ├128 BANK0 LAST ALLOWED FREE PAGE PLUS ONE (NORM $FF)
  491.           [╘HIS IS THE HIGHEST PAGE, PLUS ONE, ON ╥┴═0 THAT ┴├┼ IS ALLOWED TO
  492.            USE.  ┘OU CAN SET THIS TO PROTECT A PROGRAM THAT YOU WISH TO
  493.            ATTEMPT TO USE WITH ┴├┼ (GOOD LUCK).  ╘HERE IS NO MINIMUM PAGE THAT
  494.            ┴├┼ IS ALLOWED TO USE; IT TAKES WHATEVER IT WANTS BELOW $6000.]
  495. $┴4    1  ├64 SOFT-80 NON-╥┼╒ _MINIMUM_ PRESCROLL AMOUNT (NORM 5)
  496.           [╘HIS WILL MAKE IT SO THAT EACH "WRITE" SYSTEM CALL THAT PRINTS DATA
  497.            TO THE SCREEN THAT CAUSES THE SCREEN TO SCROLL WILL MAKE THE SCREEN
  498.            SCROLL BY AT THE GIVEN NUMBER OF LINES, EVEN IF THERE ISN'T ENOUGH
  499.            DATA TO FILL THE SCROLLED-UP NUMBER OF LINES.  ╘HIS MAKES THE
  500.            SCROLLING ACTION A LITTLE UGLIER BUT ╬ TIMES MORE EFFICIENT FOR
  501.            PROGRAMS THAT PRINT DATA ONE LINE AT A TIME, LIKE "LS".]
  502. $┴5    1  ├128 LAST INTERNAL BANK ALLOWED TO USE ABOVE 2, PLUS ONE (NORM 8)
  503.           [╞OR EXPANDED INTERNAL MEMORY (A LA ╘WIN├ITIES-128), THIS SETS THE
  504.            HIGH LIMIT ON THE BANKS THAT ┴├┼ IS ALLOWED TO USE.  ┴ VALUE OF 2
  505.            MEANS THAT ┴├┼ IS NOT ALLOWED TO USE IT AT ALL.  ╘HERE IS NO LOW
  506.            LIMIT ON THIS BECAUSE IT CAUSED TOO MANY PROGRAMMING PROBLEMS.]
  507. $┴6    1  ├128 FIRST ╥┼╒ BANK ALLOWED TO USE (NORM 0)
  508.           [╘HIS AND THE NEXT FIELD DEFINE THE MINIMUM AND MAXIMUM (PLUS ONE)
  509.            ╥┼╒ BANK NUMBERS THAT ┴├┼ IS ALLOWED TO USE.  ╔ INCLUDED A MINUMUM
  510.            BECAUSE OF PLEAS ABOUT ┌ED HAVING A MINIMUM.  ╔F YOU SET BOTH MIN
  511.            AND MAX TO $00, THEN ┴├┼ WILL LEAVE THE ╥┼╒ MEMORY ALONE.
  512.            ╧THERWISE, ┴├┼ WILL AUTO-DETECT HOW MUCH YOU HAVE AND WILL MAKE USE
  513.            OF AS MUCH ╥┼╒ MEMORY AS IT CAN (NOTE THE DEFAULT MAX IS 255).]
  514. $┴7    1  ├128 LAST ╥┼╒ BANK ALLOWED TO USE PLUS ONE (NORM 255)
  515. $┴8    1  ├128 TOP PAGE OF ╘╨┴ (STACK) (NORM $C0)
  516.           [╘HIS DEFINES THAT PAGE (PLUS ONE) OF THE TOP OF THE APPLICATION
  517.            PROGRAM AREA (╘╨┴).  ╘HE BOTTOM IS $6000, SO A TOP OF $├000 GIVES
  518.            APPS 24╦ TO PLAY AROUND IN.  $├0 IS THE MAXIMUM VALUE THIS FIELD
  519.            CAN HAVE, SINCE THE ├OMMODORE ╦ERNAL MUST (FOR THIS RELEASE) STAY
  520.            IN CONTEXT WHENEVER ┴├┼ IS IN USE.  ╘HE TOP OF THIS SPACE IS ALSO
  521.            USED AS THE "ARGUMENT STACK" FOR APPLICATIONS.]
  522. $┴9    1  ├128 ╓─├ DEFAULT NUMBER OF ROWS (NORM 25)
  523.           [╘HIS OPTION SELECTS THE NUMBER OF ROWS TO DISPLAY ON THE ╓─├ SCREEN
  524.            WHENEVER ┴├┼ STARTS UP OR WHENEVER A USER PROGRAM (LIKE "EIGHTY")
  525.            SAYS TO USE THE DEFAULT NUMBER OF DISPLAY ROWS.]
  526. $┴┴    1  ├128 ╓─├ NUMBER OF ╦BYTES OF VIDEO ╥┴═ (NORM 16)
  527.           [╫HAT IT SAYS.  ╓ALID VALUES FOR THIS OPTION ARE 16 AND 64.  ╘HERE
  528.            WILL BE NO PROBLEM IF YOUR MACHINE REALLY HAS 64╦ BUT YOU ONLY SAY
  529.            IT HAS 16╦.]
  530. $┴┬    1  ├64 SOFT-80 SCREEN MAXIMUM PRESCROLL FOR ╥┼╒-SUPPORTED SCROLLING
  531.           [╘HE MAXIMUM NUMBER OF LINES TO "PRESCROLL" THE SCREEN IF YOUR
  532.            PROGRAM MAKES THE "WRITE" SYSTEM CALL WITH MULTIPLE LINES WORTH OF
  533.            DATA TO DISPLAY ONTO THE SCREEN.  ╘HE CURSOR WILL ALWAYS END UP ON
  534.            THE BOTTOM LINE OF THE DISPLAY.  ╘HIS OPTION MAKES THE SCROLLING
  535.            A BIT JUMPIER BUT MUCH MORE EFFICIENT.  ╘HIS OPTION IS NORMALLY
  536.            SET TO 99, WHICH REALLY MEANS THE NUMBER OF LINES ON THE SCREEN.]
  537. $┴├    1  ├128 80-COL SCREEN MAXIMUM PRESCROLL
  538.           [╘HE MAXIMUM NUMBER OF LINES TO "PRESCROLL" THE SCREEN.  ╘HE
  539.            FACTORY-SET DEFAULT IS 99, WHICH REALLY MEANS THE NUMBER OF LINES
  540.            ON THE SCREEN.]
  541. $┴─    1  ├128 40-COL SCREEN MAXIMUM PRESCROLL
  542.           [╘HE MAXIMUM NUMBER OF LINES TO "PRESCROLL" THE SCREEN.  ╘HE
  543.            FACTORY-SET DEFAULT IS 99, WHICH REALLY MEANS THE NUMBER OF LINES
  544.            ON THE SCREEN.]
  545. $┴┼    1  ├64 SOFT-80 SCREEN MAXIMUM PRESCROLL FOR SOFTWARE SCROLLING
  546.           [╘HE MAXIMUM NUMBER OF LINES TO "PRESCROLL" THE SCREEN.  ╘HE
  547.            FACTORY-SET DEFAULT IS 99, WHICH REALLY MEANS THE NUMBER OF LINES
  548.            ON THE SCREEN.]
  549. $┴╞    1  ├64 40-COL SCREEN MAXIMUM PRESCROLL
  550.           [╘HE MAXIMUM NUMBER OF LINES TO "PRESCROLL" THE SCREEN.  ╘HE
  551.            FACTORY-SET DEFAULT IS 99, WHICH REALLY MEANS THE NUMBER OF LINES
  552.            ON THE SCREEN.]
  553. $┬0    8  ├128 80-COL SCREEN COLOR PALETTE: TABLE OF EIGHT ╥╟┬╔ CODES.
  554.           [╘HIS TABLE GIVES THE PALETTE OF COLORS TO BE USED BY ├128 80-COL
  555.            APPLICATIONS.  ╘HE MEANINGS OF THE VALUES STORED AT THE OFFSETS
  556.            ARE: 0=CHAR, 1=CURSOR, 2=STATUS, 3=SEPARATOR, 4=HIGHLIGHT, 5=ALERT,
  557.            6=BORDER, 7=SCREEN.  ╘HE CHAR, BORDER, AND SCREEN COLORS ARE USED
  558.            WHEN THE SCREEN DRIVER IS INITIALIZED.  ╘HE BORDER VALUE FOR THE
  559.            80-COL SCREEN IS CURRENTLY IGNORED.  ╬OTE THAT ╥╟┬╔ CODES ARE USED,
  560.            EVEN FOR THE ╓╔├ CHIP (FOR CONSISTENCY).  ╘HE FACTORY DEFAULTS FOR
  561.            CHAR, SCREEN, AND BORDER ARE LIGHT GREY ON BLACK FOR 80 AND LIGHT
  562.            GREEN ON DARK GREY WITH A MEDIUM GREY BORDER FOR THE 40 (PERHAPS A
  563.            BIT ICKY).  ╘HE OTHER VALUES ARE CHOSEN ACCORDINGLY.  ╘HE PALETTES
  564.            FOR THE OTHER DISPLAYS HAVE THE SAME STRUCTURE AS THIS ONE.]
  565. $┬8    8  ├128 40-COL COLOR PALETTE
  566. $├0    1  ├64 SOFT-80 ENABLE MASK (NORM %10100000)
  567.           [╘HE 128-BIT ALLOWS THE SOFT-80 SCREEN TO BE USED.  ┴LLOWING THE
  568.            SOFT-80 SCREEN COSTS 10╦ OF ╥┴═0 MEMORY ON THE ├64.  ╘HIS SOFTWARE-
  569.            IMPLEMENTED BITMAP 80-COLUMN SCREEN IS SUPPORTED ONLY ON THE ├64.
  570.            ╧N A ├128, USE THE REAL 80-COLUMN SCREEN.  ╔F THE SOFT-80 SCREEN IS
  571.            NOT ALLOWED, THEN THE 10╦ OF MEMORY IS MADE AVAILABLE FOR FAR
  572.            MEMORY USE (E.G., FOR RAMDISKS).  ╘HE 64-BIT SPECIFIES THAT THE
  573.            SOFT-80 SCREEN IS TO BE ENTERED BY DEFAULT WHEN ┴├┼ STARTS UP,
  574.            RATHER THAN THE 40-COL SCREEN.  ┘OU CAN SWITCH BETWEEN THE TWO
  575.            SCREENS BY USING THE "FORTY" AND "EIGHTY" PROGRAMS.  ╘HE 32-BIT
  576.            SPECIFIES THAT THE ╥┼╒ IS TO BE USED TO ASSIST IN SCROLLING THE
  577.            BITMAP SCREEN IF AN ╥┼╒ IS PRESENT.  ╘HE COST OF DOING THIS IS 7.5╦
  578.            OF ╥┼╒ MEMORY.  ╘HE BENEFIT IS THAT THE SCREEN WILL SCROLL SEVERAL
  579.            TIMES FASTER THAN IT WILL BY JUST USING THE MAIN PROCESSOR, WHICH
  580.            IS USED OTHERWISE.]
  581. $├1    1  ├64 LAST ALLOWED PAGE FREE PLUS ONE (NORM $FF)
  582.           [╘HIS GIVES THE TOP PAGE, PLUS ONE, THAT ┴├┼ IS ALLOWED TO USE ON
  583.            THE 64.  ─ON'T SET THIS LOWER THAN THE TOP OF THE ╘╨┴ AREA.]
  584. $├2    1  ├64 FIRST ╥┼╒ BANK ALLOWED TO USE (NORM $00)
  585.           [╠IKE THE ├128 SETTINGS, YOU CAN SET THE USAGE FOR THE ╥┼╒ MEMORY.]
  586. $├3    1  ├64 LAST ╥┼╒ BANK ALLOWED TO USE (NORM $FF)
  587. $├4    1  ├64 EXPANDED INTERNAL MEMORY TYPE
  588.           [╬OT CURRENTLY SUPPORTED.]
  589. $├5    1  ├64 END EXPANDED INTERNAL MEMORY BANKS PLUS ONE (NORM $04)
  590.           [╘HIS FIELD IS CURRENTLY IGNORED.]
  591. $├6    1  ├64 TOP PAGE OF ╘╨┴ (STACK) (NORM $A3)
  592.           [╘OP OF THE ╘╨┴ FOR THE 64.  ┘OU CAN SET THIS BETWEEN $61 AND $D0,
  593.            BUT BE SURE NOT TO COLLIDE WITH THE STUFF IN HIGH MEMORY (SEE THE
  594.            MEMORY MAP EARLIER IN THIS DOCUMENT).  ╔ SET THE DEFAULT HERE
  595.            LOWER THAN IT NEEDS TO BE SO THAT A STOCK ├64 WITH THE SOFT-80
  596.            SCREEN CONFIGURED WILL HAVE ENOUGH MEMORY TO LOAD THE COMMAND
  597.            SHELL ONTO THE RAMDISK.  ╔F YOU HAVE EXPANDED MEMORY, THEN YOU
  598.            SHOULD SET THIS TO $C0 TO GET MAXIMUM APPLICATION PERFORMANCE
  599.            (FROM BIGGER DATA BUFFERS).]
  600. $├7    1  ╓IDEO TYPE: ╬╘╙├ (0) OR ╨┴╠ (1) (DEFAULT: 0)
  601. $├8    1  KEY REPEAT DELAY (NORM 20)
  602.           [╘HE NUMBER OF JIFFIES BETWEEN WHEN YOU PRESS A KEY THE FIRST TIME
  603.            AND WHEN IT STARTS REPEATING.]
  604. $├9    1  KEY REPEAT RATE (NORM 3)
  605.           [╘HE NUMBER OF JIFFIES BETWEEN EACH REPEAT OF A KEY WHILE YOU ARE
  606.            HOLDING IT DOWN.]
  607. $├┴    1  CONSOLE COLOR ENABLE DEFAULT (NORM $80)
  608.           [╘HIS IS USED TO ENABLE WHAT IS NORMALLY PRINTED ON THE CONSOLE
  609.            SCREEN: CHARACTERS, COLORS, AND/OR ATTRIBUTES.  ┴LL APPLICATIONS
  610.            THAT NEED TO USE COLORS WILL ENABLE AND RESTORE THE CONSOLE
  611.            COLORS BY THEMSELVES, SO THERE IS NO NEED TO HAVE THEM ENABLED
  612.            ALL THE TIME.  ╘HE DEFAULT IS TO HAVE ONLY CHARACTERS ENABLED
  613.            (NOT COLORS/ATTRIBUTES) BECAUSE THIS ALLOWS IT TO OPERATE TWICE
  614.            AS QUICKLY FOR OPERATIONS LIKE SCROLLING.]
  615. $├┬    1  INPUT LINE SCROLLBACK BUFFER LINE COUNT (NORM 5)
  616.           [╘HE NUMBER OF PREVIOUS LINES TO SAVE SO THAT YOU CAN SCROLL BACK
  617.            THROUGH PREVIOUS INPUT LINES IN ORDER TO EDIT THEM.  ┼ACH LINE
  618.            OF BUFFER SPACE REQUIRES 256 BYTES OF FAR MEMORY TO STORE.
  619.            ┘OU ═╒╙╘ SPECIFY AT LEAST ONE LINE, OR THE SYSTEM WILL CRASH IN
  620.            ALL SORTS OF WEIRD AND WONDERFUL WAYS (THIS IS A BUG, NOT A
  621.            FEATURE).]
  622. $├├    1  CONTROLLER PORT 1 DEVICE
  623.           [╬OT CURRENTLY IMPLEMENTED.]
  624. $├─    1  CONTROLLER PORT 2 DEVICE
  625.           [╬OT CURRENTLY IMPLEMENTED.]
  626. $├┼    1  ├128 ╓─├ MAXIMUM NUMBER OF ROWS TO DISPLAY (NORM 51)
  627.           [╘HIS SETTING GIVES THE MAXIMUM NUMBER OF ROWS THAT YOU WANT YOUR
  628.            SCREEN TO DISPLAY.  ╙OME PROGRAMS WILL ASK FOR THIS MAXIMUM SETTING
  629.            (LIKE "EIGHTY 255").  ┘OU SHOULD SET THIS TO THE MAXIMUM NUMBER OF
  630.            (INTERLACED) LINES THAT WILL FIT ON YOUR DISPLAY.  ╘HE VALUE 51 IS
  631.            THE ABSOLUTE MAXIMUM: THE MAXIMUM THAT HARDWARE WILL SUPPORT.]
  632. $├╞    1  ├128 ╓─├ "CROSSOVER" NUMBER OF DISPLAY ROWS (NORM 28)
  633.           [╘HIS SETTING GIVES THE NUMBER OF ╓─├ DISPLAY ROWS WHICH WILL BE THE
  634.            LOWEST SETTING THAT WILL BE DISPLAYED IN INTERLACE MODE.  ╘HE
  635.            INTERLACE CHARACTERS ARE APPROXIMATELY HALF AS HIGH AS THE REGULAR
  636.            CHARACTERS, SO YOU WILL BE ABLE TO SEE MORE ON YOUR SCREEN.  ╘HE
  637.            FACTORY-SET DEFAULT IS PROBABLY GOOD FOR A ╘╓, BUT YOU CAN SEE
  638.            WHAT WORKS FOR YOU.  ╔ HAVE A 1902A MONITOR, AND ╔ CAN DISPLAY
  639.            30 LINES IN REGULAR CHARACTERS (THE MAXIMUM THE HARDWARE ALLOWS),
  640.            SO ╔ SET THE "CROSSOVER" VALUE TO 31 FOR MYSELF.  ╬OTE: ╔ DON'T
  641.            KNOW HOW WELL THESE INTERLACED CHARACTERS WILL WORK ON NON-╬╘╙├
  642.            MACHINES, OR ON NON-1902A'S, BUT YOU CAN TRY THEM FOR YOURSELF.
  643.            ╔F THEY DON'T WORK, THEN YOU CAN JUST SET THIS OPTION TO BE LARGER
  644.            THAN THE MAXIMUM NUMBER OF ╓─├ ROWS TO DISPLAY (PREVIOUS OPTION),
  645.            AND YOU'LL NEVER HAVE TO LOOK AT INTERLACED CHARACTERS.]
  646. $─0    8  ├64 80-COL COLOR PALETTE
  647.           [╞OR THE BITMAPPED HI-RES 80-COL SCREEN, WHICH IS NOT YET
  648.            IMPLEMENTED.]
  649. $─8    8  ├64 40-COL COLOR PALETTE
  650. $┼0    1  ╘HE ╥┴═╠INK-╥┴═ PARTITION NUMBER (NORM. 31)
  651.           [╙EE THE ─YNAMIC ═EMORY SECTION BELOW.]
  652. $┼1   13  ╙TRING: ╘HE ╥┴═╠INK-╥┴═ PARITION NAME (NORM. "RL-RAM")
  653. $┼┼    1  ╘HE ╥┴═╠INK-╔NDIRECT-╥┼╒ PARTITION NUMBER (NORM. 30)
  654. $┼╞   17  ╙TRING: ╥┴═╠INK-╔NDIRECT-╥┼╒ PARTITION NAME (NORM. "INDIRECT-REU")
  655. $100  32  INITIAL/HOME CURRENT DIRECTORY STRING (DEFAULT "A:")
  656.           [╔MMEDIATELY AFTER BOOTING AND BEFORE CALLING THE SHELL, THE KERNEL
  657.            WILL DO A CHANGE DIRECTORY TO THE NULL-TERMINATED STRING GIVEN
  658.            HERE.]
  659. $120  32  ╙TRING: USER-DEFINABLE KEYMATRIX FILE, OR NULL (NORM. "")
  660. $140  64  ╙TRING: DEFAULT EXECUTABLE SEARCH PATH (DEF. "Z:", "A:", ".:")
  661.           [╘HE PATHS TO USE TO SEARCH FOR EXECUTABLE PROGRAMS.  ┼ACH DIRECTORY
  662.            NAME IS A NULL-TERMINATED STRING, AND THE LIST OF PATHS IS
  663.            TERMINATED BY AN EMPTY STRING.]
  664. $180  64  ├ONFIGURATION-FILE SEARCH PATH (DEF. "Z:", "A:")
  665.           [╬OT CURRENTLY USED.]
  666. $1├0  32  ╘EMPORARY-FILE DIRECTORY NAME (DEF. ".:")
  667.           [╘HE DIRECTORY TO USE TO STORE INTERMEDIATE/TEMPORARY FILES.]
  668. $1┼0  32  ╬AME OF CHARACTER SET TO LOAD WHEN BOOTING UP (N."ACECHR-COMMODORE")
  669. $200   -  ╙╔┌┼
  670.  
  671. ╘HE OFFSETS FROM $00 TO $7╞ CONTAIN 32 FOUR-BYTE FIELDS, WHICH ARE USED TO
  672. DEFINE THE DEVICES IN THE SYSTEM.  ╘HESE FIELDS WILL CORRESPOND TO DEVICE
  673. NAMES "@:", "┴:", "┬:", ..., "┌:", "[:", "\:", "]:", "^:", AND "_:" (FORGIVE
  674. THE NON-LETTER DEVICE NAMES).  ╘HE FOUR FIELDS WILL BE DEFINED AS FOLLOWS:
  675.  
  676. 0 DEVICE DRIVER TYPE (0=╦ERNAL NON-DISK, 1=╦ERNAL DISK, 2=CONSOLE, 3=NULL,
  677.   4=RAMDISK, 5=USERPORT, 6=SWIFTLINK, 255=EMPTY)
  678. 1 DEVICE PRIMARY ADDRESS
  679.   (╙WIFT╠INK: ╔/╧ PAGE OF HARDWARE)
  680. 2 DEVICE SECONDARY ADDRESS
  681.   (╙WIFT╠INK: SIZE OF RECEIVE BUFFER IN PAGES)
  682. 3 FLAGS
  683.   (╦ERNAL─ISK: $80 FOR A DISK WILL MEANS THAT IT HAS A ├═─ ╥EAL-╘IME CLOCK)
  684.   (╒SER╨ORT: $00=USE RAW COMMUNICATION, $80=USE PACKET-ORIENTED COMMUNICATION)
  685.   (╙WIFT╠INK: BELOW)
  686.  
  687. ╞OR THE SWIFTLINK DEVICE, THE "PRIMARY ADDRESS" FIELD CONTAINS THE ╔/╧ PAGE OF
  688. THE SWIFTLINK CHIP (NORMALLY $DE, BUT YOU CAN USE ANY PAGE YOU WANT).  ╘HE
  689. "SECONDARD ADDRESS" FIELD SHOULD BE SET TO THE NUMBER OF PAGES THAT YOU WANT
  690. IN YOUR RECEIVE BUFFER.  ╘HE FACTORY-SET DEFAULT IS FOR ONE PAGE (256 BYTES).
  691. ╘HIS VALUE IS SELECTED TO CONSERVE MEMORY; YOU MAY BE HAPPIER WITH A VALUE OF
  692. 4 (MEANING 1024 BYTES) OR SO.  ╘HE MAXIMUM FOR THIS SETTING CAN BE TO THE
  693. POINT AT WHICH THE RECEIVE BUFFER CROSSES THE TRANSIENT-PROGRAM AREA (ABOUT
  694. 12╦ WITH THE STANDARD CONFIGURATION, LESS WITH A SOFT-80 ├64), AND THE MINIMUM
  695. SETTING IS FOR 1 PAGE.
  696.  
  697. ╘HE "FLAGS" FIELD FOR THE SWIFTLINK SHOULD BE SET AS FOLLOWS.  ╘HE 128 BIT
  698. SHOULD BE SET TO "0" IF YOU WANT YOUR MODEM PARAMETERS TO BE "8╬1" AND "1" IF
  699. YOU WANT "7┼1".  ╬O OTHER WORD-LENGTH/PARITY/STOP-BITS SETTINGS ARE SUPPORTED.
  700. ╘HE LOWER FOUR BITS SHOULD BE SET TO SELECT THE BAUD RATE, ACCORDING TO THE
  701. FOLLOWING TABLE.  ╘HE FACTORY-SET DEFAULT IS TO 2400 BAUD WITH 8╬1 ($08).
  702.  
  703. BITS   HEX   DEC     BAUD
  704. ----   ---   ---   ------
  705. 0000     0     0   EXTERN     (16X EXTERNAL CLOCK: USELESS--DON'T USE)
  706. 0001     1     1      100
  707. 0010     2     2      150
  708. 0011     3     3      219.84  (PRETTY USELESS)
  709. 0100     4     4      269.16  (PRETTY USELESS)
  710. 0101     5     5      300
  711. 0110     6     6      600
  712. 0111     7     7    1,200
  713. 1000     8     8    2,400
  714. 1001     9     9    3,600
  715. 1010     A    10    4,800
  716. 1011     B    11    7,200
  717. 1100     C    12    9,600
  718. 1101     D    13   14,400
  719. 1110     E    14   19,200
  720. 1111     F    15   38,400
  721.  
  722. ╔F YOU DON'T WANT TO WASTE MEMORY ON SWIFTLINK TRANSMIT AND RECEIVE BUFFERS
  723. IN YOUR CONFIGURATION, THEN JUST REMOVE THE DEVICE ENTRY FOR THE SWIFTLINK
  724. (NORMALLY DEVICE SLOT "X:") BY SETTING THE DEVICE TYPE TO 255 (EMPTY).  ┘OU
  725. DON'T HAVE TO WORRY ABOUT ANY MEMORY-BLEED PROBLEMS WITH THIS DEVICE, SINCE
  726. ┴├┼ WILL TOUCH ITS ╔/╧ REGISTERS AND INTIALIZE THE ╙WIFT╠INK CHIP ONLY IF
  727. YOU OPEN A FILE TO THE DEVICE DRIVER (I.E., USE THE "TERM" PROGRAM).
  728.  
  729. ╘O SPARE YOU THE AGONY OF EDITING THIS BINARY CONFIGURATION MANUALLY, THE
  730. ┬┴╙╔├ PROGRAM "CONFIG.EDIT" CAN BE USED INSTEAD.  ╥UN IT FROM ┬┴╙╔├, NOT
  731. FROM INSIDE OF ┴├┼.  ╔N FACT, YOU SHOULD RUN THIS BEFORE RUNNING ┴├┼ THE
  732. FIRST TIME TO SET UP THE CONFIGURATION.
  733.  
  734. ╘HE PROGRAM PROVIDES A FULL-SCREEN INTERFACE.  ═OVE THE CURSOR AMONG THE
  735. FIELDS ON EACH PAGE AND AMONG THE PAGES TO SET THE VALUES.  ┴LL VALUES ARE
  736. IN DECIMAL (EXCEPT THE STRINGS).  ╘HEN SAVE THE NEW CONFIGURATION, EXIT, AND
  737. RUN ┴├┼.  ╔F YOU SCREW UP THE NEW ".ACERC", THE PREVIOUS ONE WILL BE
  738. AVAILABLE IN ".ACERC.BAK".  ╒NFORTUNATELY, THE PROGRAM WANTS ALL OF ITS
  739. VALUES IN DECIMAL, SO YOU'LL HAVE TO CONVERT HEX AND DECIMAL YOURSELF IF HEX
  740. VALUES MAKE MORE SENSE TO YOU.
  741. ------------------------------------------------------------------------------
  742. 4. ─┘╬┴═╔├ ═┼═╧╥┘
  743.  
  744. ┴FTER YOU HAVE CONFIGURED ┴├┼ FOR YOUR SYSTEM, IF YOU HAVE A ╥┴═╠INK, YOU
  745. WILL HAVE TO CONFIGURE IT FOR ┴├┼ IF YOU WANT TO USE ╥┴═╠INK ╥┴═ OR INDIRECT
  746. ╥┼╒ ACCESS.  ╘HE WAY THAT ┴├┼ DETECTS THESE TYPES OF MEMORY IS VIA THE
  747. ╥╠-─╧╙ PARTITION TABLE.  ╞OR ╥┴═╠INK ╥┴═, ┴├┼ WILL CHECK FOR PARTITION
  748. NUMBER 31 BEING A ╞OREIGN ═ODE (─IRECT ┴CCESS) PARTITION WITH THE NAME
  749. "RL-RAM".  (┘OU CAN CHANGE THE PARTITION NUMBER/NAME IN THE CONFIGURATION IF
  750. YOU WISH).  ╔F IT IS, THEN ┴├┼ WILL GET THE INFORMATION FOR THAT PARTITION
  751. TO DETERMINE THE SIZE AND START ADDRESS (IN ╥╠ MEMORY).  ╔T WILL THEN CHECK
  752. THE LIMIT FOR USAGE OF ╥╠-╥┴═ IN THE ".ACERC" FILE, AND ADJUST THE SIZE IT
  753. CAN USE ACCORDINGLY, BEFORE INITIALIZING THE MEMORY.  ╘O SET UP THIS
  754. PARTITION ON YOUR ╥┴═╠INK IN THE FIRST PLACE, REFER TO YOUR ╥┴═╠INK
  755. DOCUMENTATION AND USE THE TOOLS PROGRAM PROVIDED WITH IT.
  756.  
  757. ╒SING ╥┼╒ (╥AM ┼XPANSION ╒NIT) MEMORY WITH ┴├┼ IS PRETTY EASY; YOU JUST MAKE
  758. SURE IT IS PLUGGED INTO THE COMPUTER WHEN ┴├┼ IS STARTED.  ┴├┼ WILL AUTO-
  759. DETECT THE SIZE OF THE ╥┼╒ AND THEN CHECK THE CONFIGURATION FOR LIMITIATIONS
  760. ON ╥┼╒ USAGE.
  761.  
  762. ╔F YOU HAVE YOUR ╥┼╒ PLUGGED INTO YOUR ╥┴═╠INK IN THE ╥┴═ PORT (RATHER THAN
  763. THE PASS-THROUGH PORT), AND YOU HAVE THE ╬ORMAL/─IRECT SWITCH THROWN TO THE
  764. ╬ORMAL POSITION, THEN YOUR MACHINE CANNOT ACCESS ╥┼╒ MEMORY IN THE USUAL
  765. WAY.  ╘HE ONLY WAY TO ACCESS IT IS TO GO THROUGH THE ╥┴═╠INK.  ┴├┼ WILL LOOK
  766. FOR PARTITION NUMBER 30 BEING ─IRECT ┴CCESS AND NAMED "INDIRECT-REU" FOR
  767. THIS PURPOSE.  (┘OU CAN CHANGE THIS PARTITION NUMBER/NAME IN THE
  768. CONFIGURATION).  ╔F YOUR ╬ORMAL/─IRECT SWITCH IS IN THE ─IRECT POSITION,
  769. THEN ┴├┼ WILL USE THE ╥┼╒ DIRECTLY AND WILL IGNORE THE "INDIRECT-REU"
  770. PARTITION.  ─O NOT CHANGE THE POSITION OF THE ╬ORMAL/─IRECT SWITCH WHILE ┴├┼
  771. IS IN ACTION.
  772.  
  773. ╘HE TRICKY PART HERE IS IN CONFIGURING YOUR ╥┴═╠INK.  ┘OU HAVE TO MAKE SURE
  774. THAT THE MEMORY ALLOCATED TO THE "INDIRECT-REU" PARTITON IS THE MEMORY OF
  775. THE ╥┼╒.  ╥┴═╠INK MEMORY STARTS FROM $000000 AND GOES UP TO $╞╞╞╞╞╞.  ╥┼╒
  776. MEMORY WILL BE AT THE VERY FRONT OF THIS MEMORY (FROM ADDRESS $000000), AND
  777. THE INTERNAL ╥┴═╠INK MEMORY WILL FOLLOW IMMEDIATELY AFTER THIS.  ╞OR
  778. EXAMPLE, IF ╔ HAD A 512╦ ╥┼╒ AND AN 8 ═EG ╥┴═╠INK, MY ╥┼╒ MEMORY WOULD COVER
  779. ╥╠ ADDRESSES $000000-$07╞╞╞╞, AND MY INTERNAL ╥╠ MEMORY WOULD COVER ╥╠
  780. ADDRESSES $080000-$87╞╞╞╞.  ╫HEN PARTITIONING THE DEVICE, PARTITIONS ARE
  781. ASSIGNED MEMORY FROM LOWER ADDRESSES TO HIGHER ADDRESSES.  ╙O, STARTING WITH
  782. AN EMPTY ╥╠ (NO PARTITIONS), YOU MUST CREATE THE "INDIRECT-REU" PARTITION
  783. FIRST, FOLLOWED BY ANY ╥╠-─╧╙ PARTITIONS AND THE "RL-RAM" PARTITION.  ┘OU
  784. MUST ALSO MAKE SURE THAT THE "INDIRECT-REU" PARTITION IS THE SAME SIZE AS
  785. YOUR ╥┼╒.  512╦ IS 2048 BLOCKS.  ┴ NOTE FOR DELETING ╥╠ PARTITIONS: DELETE
  786. THE ONES THAT WERE LAST ALLOCATED FIRST.
  787.  
  788. ┘OU HAVE THE OPTION OF INSTALLING OR NOT INSTALLING EITHER OF THESE
  789. PARTITIONS.  ╔F EITHER IS MISSING, ┴├┼ WILL SIMPLY WORK WITHOUT IT.  ┘OU'LL
  790. WANT TO BE CAREFUL ABOUT THROWING THE ─IRECT SWITCH IF YOU DON'T HAVE YOUR
  791. ╥┼╒ "PROTECTED" WITH AN "INDIRECT-REU" PARTITION.  (╫ITH OTHER ╥┼╒
  792. APPLICATIONS ALSO).
  793.  
  794. ╘HE VARIOUS TYPES OF MEMORY GIVE THE FOLLOWING PERFORMANCE UNDER ┴├┼:
  795.  
  796. TYPE            BANDWIDTH   LATENCY
  797. -------------   ---------   -------
  798. ╥┼╒             1,007,641      65.8
  799. ╥┼╒ THRU ╥╠     1,007,641      77.8
  800. ╥┴═╠INK           105,792     199.2
  801. ╥╠ WITH ╥┼╒       372,827     319.8
  802. INTERNAL ╥┴═0     120,181      44.2
  803. INTERNAL ╥┴═1      80,283      56.3
  804.  
  805. ╘HE BANDWIDTH IS IN BYTES/SEC AND THE LATENCY IS IN SLOW TICKS
  806. (▐MICROSECONDS).  ╘O DETERMINE HOW MUCH TIME IT WILL TAKE TO PERFORM A
  807. SPECIFIC REQUEST, TAKE THE NUMBER OF BYTES YOU WANT TO TRANSFER AND DIVIDE
  808. IT BY THE BANDWIDTH, MULTIPLY THE RESULT BY 1,022,727 (╬╘╙├) AND ADD THE
  809. LATENCY.  ╘HIS WILL GIVE YOU THE TRANSFER TIME IN SLOW TICKS.
  810.  
  811. ╞OR THE TYPES: "╥┼╒" IS THE ╥┼╒ BEING ACCESSED DIRECTLY AND "╥┼╒ THRU ╥╠" IS
  812. THE ╥┼╒ BEING ACCESSED THROUGH A ╥┴═╠INK: THE ╥┼╒ MUST BE PLUGGED INTO THE
  813. ╥┴═ PORT OF THE ╥╠ AND THE ╬ORMAL/─IRECT SWITCH MUST BE IN ╬ORMAL POSITION
  814. AND THE "INDIRECT-REU" PARTITION MUST BE SET UP.  "╥┴═╠INK" IS THE ╥╠
  815. PARTITION "RL-RAM" BEING ACCESSED WITHOUT ╥┼╒ ASSISTANCE AND "╥╠ WITH ╥┼╒"
  816. IS THE ╥╠ PARTITION "RL-RAM" BEING ACCESSED WHEN THE ASSISTANCE OF AN ╥┼╒;
  817. THE ╥┼╒ MUST BE PLUGGED INTO THE ╥┴═ PORT AND THE ╬ORMAL/─IRECT SWITCH CAN
  818. BE IN EITHER POSITION.
  819.  
  820. ╞OR INTERNAL MEMORY, THE 64 HAS ONLY ONE 64╦ INTERNAL BANK, WHEREAS YOUR 128
  821. CAN HAVE EITHER 2, 4, OR 8 (128╦, 256╦, OR 512╦).  ╘HE INTERNAL 128 MEMORY
  822. ABOVE 128╦ IS ACCESSED ACCORDING TO THE ARTICLES IN ╘WIN├ITIES-128
  823. ═AGAZINE.
  824.  
  825. ╫HEN ┴├┼ STARTS, IT DETERMINES THE SIZE OF INTERNAL AND ╥┼╒ MEMORY BY
  826. WRITING SPECIAL VALUES IN THE SAME LOCATIONS OF EACH BANK AND LOOKING FOR
  827. READBACK FAILURES OR WRAP-AROUNDS.  ╚OWEVER, AFTER TESTING A BANK, THE
  828. ORIGINAL CONTENTS OF THE TEST LOCATIONS ARE RESTORED.  ╙O, THE TESTING
  829. PROCESS IS COMPLETELY NON-DESTRUCTIVE.
  830. ------------------------------------------------------------------------------
  831. 5. ─┼╓╔├┼╙
  832.  
  833. 5.1. ├╧══╧─╧╥┼ ├╚┴╥┴├╘┼╥ ─┼╓╔├┼╙
  834.  
  835. ╘HESE ARE REGULAR ├OMMODORE CHARACTER-ORIENTED DEVICES, WHICH REALLY ONLY
  836. INCLUDES THE PRINTER RIGHT NOW.  ╘HE STANDARD ╦ERNAL CALLS ARE MADE FOR
  837. ALL ╔/╧.  ╘HESE DEVICES WILL BEHAVE THE SAME WAY THEY ALWAYS HAVE.
  838.  
  839. 5.2. ─╔╙╦ ─┼╓╔├┼╙
  840.  
  841. 5.2.1. ├╧══╧─╧╥┼ ─╔╙╦ ─┼╓╔├┼╙
  842.  
  843. ╥EGULAR ├OMMODORE DISK UNITS ARE ACCESSED IN THE SAME WAY AS CHARACTER-
  844. ORIENTED ├OMMODORE DEVICES, EXCEPT THAT DISK DEVICES ALSO SUPPORT SPECIAL
  845. OPERATIONS SUCH AS DIRECTORY LISTINGS.  ╘HE STANDARD ╦ERNAL CALLS ARE
  846. USED AND SO ARE THE STANDARD ├OMMODORE-─╧╙ INCANTATIONS FOR OPERATIONS
  847. SUCH AS DELETING (SCRATCHING) A FILE.  ┘OU CAN USE THE "DOS" COMMAND OF
  848. THE COMMAND SHELL TO SEND SPECIAL ├OMMODORE-─╧╙ COMMANDS DIRECTLY TO THESE
  849. DEVICES.
  850.  
  851. 5.2.2. ├═─ ─╔╙╦ ─┼╓╔├┼╙
  852.  
  853. ╞OR ├═─ DISK DEVICES, SUPPORT HAS BEEN ADDED TO THE KERNEL TO REQUEST A
  854. "LONG-FORM" DIRECTORY LISTING, INCLUDING THE DATE AND TIME OF LAST
  855. MODIFICATION OF ALL FILES.  ╘HIS ALLOWS ┴├┼ TO PASS THIS INFORMATION ONTO
  856. APPLICATION PROGRAMS THAT REQUEST A DIRECTORY LISTING FROM THE ├═─ DEVICE.
  857. ╙PECIAL SUPPORT IS ALSO INCLUDED FOR INTERPRETING DIRECTORY AND PATHNAMES.
  858. ╘HE REST OF ACCESSING ├═─ DISK DEVICES IS HANDLED EXACTLY THE SAME AS FOR
  859. REGULAR ├OMMODORE DISK DEVICES.
  860.  
  861. 5.2.2. ╥┴═─╔╙╦ ─┼╓╔├┼
  862.  
  863. ╘HE ╥AMDISK, AS CURRENTLY IMPLEMENTED, HAS ONE MAJOR RESTRICTION: FLAT
  864. FILENAMES.  ╔.E., SUBDIRECTORIES ARE NOT CURRENTLY SUPPORTED.  ╘O MAKE UP
  865. FOR THIS DEFICIENCY, YOU CAN HAVE AS MANY RAMDISKS ACTIVE IN THE SYSTEM AS
  866. YOU LIKE.  ╙ETTING A DEVICE TO BE A RAMDISK IN THE SYSTEM CONFIGURATION IS
  867. VERY EASY: JUST CHANGE THE DEVICE TYPE CODE TO THE RAMDISK TYPE (CODE 4).
  868. ╫HEN THE SYSTEM INITIALIZES, THE KERNEL WILL SCAN THE DEVICE CONFIGURATION
  869. AND INITIALIZE EVERY RAMDISK THAT YOU SPECIFY.  ┼ACH INITIALIZED EMPTY
  870. RAMDISK COSTS 512 BYTES OF FAR MEMORY STORAGE.
  871.  
  872. ┴LL OF THE STANDARD DISK DEVICE OPERATIONS ARE SUPPORTED FOR RAMDISKS,
  873. EXCEPT, OF COURSE FOR "MKDIR" AND "RMDIR", SINCE SUBDIRECTORIES ARE NOT
  874. IMPLEMENTED.  ╘HE OPERATIONS INCLUDE: OPEN FOR READ/WRITE/APPEND, READ,
  875. WRITE, BINARY-LOAD (FOR LOADING PROGRAMS), REMOVE, RENAME, DIRECTORY OPEN &
  876. READ, CHANGE DIRECTORY (TO DEVICE), "DEVINFO", AND "ISDIR" (SEE THE
  877. ┴├┼-128/64 ╨ROGRAMMER'S ╥EFERENCE ╟UIDE FOR FURTHER DESCRIPTIONS OF THESE
  878. OPERATIONS).
  879.  
  880. ╘HE FACTORY-DEFAULT CONFIGURATION FOR RAMDISKS IS TO HAVE TWO OF THEM:
  881. DEVICES "M:" AND "Z:".  ╘HE INTENTION IS THAT YOU WILL USE DEVICE "Z:" FOR
  882. STORING YOUR OFTEN-USED PROGRAMS AND "M:" FOR YOUR GENERAL STORAGE.  ┘OU CAN
  883. STORE EXECUTABLES ON A RAMDISK AND THEY WILL LOAD VERY QUICKLY.  ╞OR THIS
  884. REASON, THE FACTORY-DEFAULT EXECUTABLE SEARCH PATH IS "Z:,A:", MEANING THAT
  885. DEVICE "Z:" WILL BE CHECKED BEFORE DEVICE "A:".
  886.  
  887. ╘O GET GOOD USE OUT OF THE RAMDISKS, IT IS RECOMMENDED THAT IF YOU HAVE A 64
  888. THEN YOU ALSO HAVE AN ╥┼╒ OR SOME OTHER MEMORY EXPANDER.  ╫ITHOUT ANY MEMORY
  889. EXPANSION, IF YOU HAVE DISABLED THE SOFT-80 SCREEN YOU WILL HAVE 16╦ OF FAR
  890. MEMORY FOR STORING RAMDISK DATA AND IF THE SOFT-80 SCREEN IS ENABLED, YOU
  891. WILL ONLY HAVE 6╦.  ╫ITH AN ╥┼╒, YOU CAN USE ALL OF THE ╥┼╒ MEMORY FOR A
  892. RAMDISK IF YOU WISH.  ╧N AN UNEXPANDED 128 YOU WILL HAVE 70╦ OR SO FOR
  893. RAMDISKS.  ╬OTE THAT BECAUSE OF THE "FAR MEMORY" ORGANIZATION OF ┴├┼, THE
  894. FAR MEMORY CAN BE USED TO STORE RAMDISK DATA AND ANY OTHER TYPE OF FAR
  895. MEMORY STORAGE.  ═EMORY UTILIZATION IS DYNAMIC SO YOU DON'T HAVE TO RESERVE
  896. LARGE CHUNKS OF FAR MEMORY EXCLUSIVELY FOR A PARTICULAR PURPOSE.
  897.  
  898. ┴S ADVERTISED AT THE TOP OF THIS DOCUMENT, THE RAMDISK DRIVER IS CAPABLE OF
  899. DELIVERING A PEAK READING SPEED OF ABOUT 1 MEGABYTE PER SECOND.  ╘HIS IS FOR
  900. READING A BIG FILE THAT WAS WRITTEN TO THE RAMDISK IN LARGE CHUNKS, WHERE
  901. THE FILE IS STORED COMPLETELY IN ╥┼╒ MEMORY.  ╞OR A SIMILAR FILE STORED
  902. COMPLETELY IN ╥┴═╠INK MEMORY, THE READING SPEED WILL BE AROUND 56╦/SEC.  ╘HE
  903. WRITING SPEED OF FILES WILL BE APPROXIMATELY THE SAME AS FOR READING FILES,
  904. BECAUSE OF THE WAY THE DATA IS ORGANIZED: THE LIMITING FACTOR IS THE DATA
  905. TRANSFER SPEED RATHER THAN SYSTEM OVERHEAD.  ╘HE ABOVE FIGURES ARE FOR A
  906. ╞AST-MODE ├128.  ┘OU SHOULD GET COMPARABLE ╥┼╒ PERFORMACE FROM ╙LOW-MODE OR
  907. A 64 AND ABOUT HALF THE PERFORMANCE IN ╙LOW MODE FROM A ╥┴═╠INK.
  908.  
  909. ╔ DON'T WANT TO GO INTO TOO MANY DETAILS, BUT TO GET SUCH HIGH PERFORMANCE,
  910. THE RAMDISK DRIVER USES VARIABLE-SIZED DISK BLOCKS.  ┼ACH BLOCK CAN BE
  911. BETWEEN 256 BYTES AND 64╦ IN SIZE AND INCLUDES 6 BYTES OF CONTROL
  912. INFORMATION.  ╫HEN YOU PERFORM A WRITE OPERATION, THE KERNEL WILL WRITE THE
  913. DATA OUT IN THE LARGEST BLOCKS POSSIBLE WITHOUT WASTING SPACE.  ╘HIS WAY,
  914. WHEN THE DATA IS READ BACK IN USING A LARGE "READ" OPERATION, VERY LITTLE
  915. CONTROL OVERHEAD IS NEEDED AND THE DATA CAN BE TRANSFERRED TO INTERNAL
  916. MEMORY IN LARGE CHUNKS, AND THE AGGREGRATED PER-BYTE ACCESSING COST IS
  917. MINIMIZED, ALMOST TO THE RAW HARDWARE-ACCESSING SPEED.
  918.  
  919. ╞UTURE EXPANSION POSSIBILITES FOR THIS DEVICE INCLUDE IMPLEMENTING
  920. SUBDIRECTORIES AND IMPLEMENTING NEW TYPES OF MEMORY WHICH RETAIN THEIR
  921. CONTENTS BETWEEN RUNS OF ┴├┼ (BUT NOT POWER INTERRUPTIONS) SO THAT YOU CAN
  922. HAVE A "PERMANENT" RAMDISK SIMILAR TO THE WAY THAT ╥┴═╠INK PARTITIONS WORK.
  923. ┴S IT IS NOW, ALL RAMDISKS ARE ERASED WHEN THE SYSTEM STARTS, SO YOU HAVE TO
  924. COPY NECESSARY FILES TO THE RAMDISKS EVERY TIME YOU REBOOT.
  925.  
  926. 5.3. ╙├╥┼┼╬
  927.  
  928. 5.3.1. ╬╧╥═┴╠ ╙├╥┼┼╬╙
  929.  
  930. ╘HE SCREEN HAS A CUSTOM DEVICE DRIVER FOR THE 40-COLUMN (╓╔├) SCREEN OF BOTH
  931. THE ├128 AND ├64 AND THE 80-COLUMN (╓─├) SCREEN OF THE ├128.  ╘HE BITMAP-
  932. IMPLEMENTED SOFT-80-COLUMN SCREEN FOR THE 64 IS DESCRIBED IN THE NEXT
  933. SECTION.  ┬ECAUSE OF THE WAY THAT THE SYSTEM HAS BEEN DESIGNED, NEW SCREEN
  934. DRIVERS JUST EASILY SLIP INTO PLACE (WELL, MAYBE IT'S NOT QUITE THAT
  935. EASY...).
  936.  
  937. ╘HE CUSTOM SCREEN DRIVER INCLUDES SUPPORT FOR THE BASIC TEXT-OUTPUT
  938. OPERATION, AS WELL AS SPECIAL FULL-SCREEN ACCESSING CALLS TO ALLOW FOR THE
  939. SIMPLIFIED AND STANDARD IMPLEMENTATION OF FULL-SCREEN PROGRAMS, SUCH AS A
  940. TEXT EDITOR.  ╙UCH A PROGRAM WOULD BE ABLE TO WORK ON THE 40-COLUMN ├64
  941. SCREEN, THE ╙OFT-80 ├64 SCREEN, AS WELL AS THE 80-COLUMN ├128 SCREEN, WITH
  942. NO MODIFICATION.  ╘HE ├OMMODORE ╦ERNAL INCLUDES VERY LITTLE SUPPORT FOR
  943. FULL-SCREEN APPLICATIONS (ONLY NUMEROUS CONTROL CHARACTER CODES).
  944.  
  945. ╞OR THE REGULAR OUTPUT, ONLY THE SCREEN CHARACTERS AND NOT THE COLORS ARE
  946. USED (NORMALLY), WHICH ALLOWS SCROLLING TO BE TWICE AS FAST.  ╧UTPUTING
  947. CHARACTERS IS ALSO FASTER BECAUSE FEWER CONTROL CHARACTERS ARE SUPPORTED, NO
  948. TRANSLATIONS BETWEEN ╨┼╘╙├╔╔ AND SCREEN CODES NEEDS TO TAKE PLACE, AND
  949. OPERATIONS ARE OPTIMIZED FOR SPEED (RATHER THAN ╥╧═ SIZE).  ╘HE DISPLAY
  950. CHARACTER SET HAS BEEN REARRANGED TO CORRESPOND TO THE ╨┼╘╙├╔╔ CHARACTER
  951. CODES, EXCEPT FOR THE "├OMMODORE" CHARACTERS.  ╘HE GRAPHICS CHARACTERS HAVE
  952. BEEN RE-THOUGHT FOR APPLICATIONS.  ╘HE SCREEN DRIVER ALSO INCLUDES BASIC
  953. SUPPORT FOR USER-WINDOWS, WHICH WILL BE TAKEN ADVANTAGE OF IN FUTURE
  954. APPLICATIONS.
  955.  
  956. ┴ PRESCROLLING FEATURE HAS BEEN IMPLEMENTED TO CUT DOWN ON THE NUMBER OF
  957. TIMES THE SCREEN HAS TO BE SCROLLED IN DISPLAYING TEXT, TO INCREASE THE
  958. DISPLAY SPEED.
  959.  
  960. 5.3.2. ┬╔╘═┴╨╨┼─ 80-├╧╠╒═╬ ╙├╥┼┼╬ ╞╧╥ ╘╚┼ 64
  961.  
  962. ╘HIS SCREEN IS IMPLEMENTED WITH A ╓╔├ BITMAP AND 4X8-PIXEL CHARACTERS.  ╘HE
  963. SCREEN MAPS INTO MEMORY UNDER THE ├OMMODORE ╦ERNAL ╥╧═.  ╘HE ATTRIBUTE BITS
  964. OF COLOR VALUES ACT AS BACKGROUND COLOR FOR COLOR CELLS, AND THE COLOR CELLS
  965. COVER TWO CHARACTER SPACES, BECAUSE OF THE ╓╔├ HARDWARE.
  966.  
  967. ┼R, ╔ SHOULD MENTION ABOUT THE CHARACTER SET.  ╘HE ONE ╔ HAVE ╔ CAME UP WITH
  968. FOR A ╓╔├-20 40-COL SCREEN PROGRAM A LONG TIME AGO BUT IT MAY NOT BE IDEAL
  969. FOR THE SMALLER PIXELS OF THE 64.  ╔ HAVE SELECTED THE DEFAULT SCREEN COLORS
  970. (BLACK ON GRAY) TO DISPLAY THE CHARACTERS CLEARLY.  ╔T WORKS BEST IF YOU
  971. TURN THE BRIGHTNESS UP ON YOUR MONITOR, TO CUT DOWN ON THE PIXEL DISTORTION
  972. OF THE 64 DISPLAY.  ╔F YOU COME UP WITH A BETTER CHARACTER SET OR SCREEN
  973. COLOR COMBINATION, PLEASE LET ME KNOW.  ╘HE FORMAT OF THE CHARACTER SET IS
  974. EXPLAINED IN THE "ACE╬╬-TECH.DOC" DOCUMENT.
  975.  
  976. 5.3.3. ╟╥┴╨╚╔├╙ ╙├╥┼┼╬╙
  977.  
  978. ╘HE KERNEL HAS BEEN EXTENDED TO INCLUDE BASIC SUPPORT FOR 320*200 MONOCHROME
  979. GRAPHICS ON THE 64 AND 640*200 AND 640*491 (╬╘╙├-64╦ ONLY) USING THE ╓─├
  980. DISPLAY OF THE 128.  ╘HE 320*200 AND 640*491 DISPLAYS HAVE A PIXEL ASPECT OF
  981. 1-TO-1 AND THE 640*200 DISPLAY HAS A PIXEL ASPECT RATIO OF 2-TO-1.  ╘HE
  982. ASPECT RATIO IS MADE AVAILABLE TO APPLICATION PROGRAMS SO THEY CAN CORRECT
  983. IT, IF THEY SO CHOOSE.  ╘HE BASIC SUPPORT THE KERNEL PROVIDES INCLUDES ONLY
  984. GETTING IN AND OUT OF GRAPHICS MODE, FILLING THE SCREEN WITH A GIVEN BYTE
  985. VALUE, AND LOADING THE BYTES OF A DISPLAY LINE.  ┴ NUMBER OF EXTENSIONS ARE
  986. POSSIBLE, BUT ╔'D LIKE TO KEEP IT SIMPLE TO KEEP DOWN THE KERNEL SIZE.
  987.  
  988. 5.4. ╦┼┘┬╧┴╥─
  989.  
  990. ┴ CUSTOM KEYBOARD SCANNER HAS BEEN ADDED ALSO.  ╔T SUPPORTS A THREE-KEY
  991. ROLLOVER AS DISCUSSED IN ├= ╚ACKING ╬ET ═AGAZINE ╔SSUE #6.  ╘HE KEY
  992. MATRICIES WILL BE EXTENDED TO INCLUDE A NUMBER OF STANDARD CONTROL CHARACTERS
  993. FOR THINGS LIKE "PAGE UP," ETC.  ╦EY SCANNING HAS BEEN COMPLETELY TAKEN OVER
  994. TO IMPLEMENT THE THREE-KEY ROLLOVER, AND TO AVOID INTERFERENCE WITH THE
  995. JOYSTICK IN PORT #1.
  996.  
  997. ╘HERE ARE A FEW NEW KEYBOARD CONTROLS.  ╘O TEMPORARILY PAUSE A LISTING GOING
  998. TO THE SCREEN, PRESS THE ├╧╬╘╥╧╠ KEY.  ╧UTPUT WILL RESUME WHEN YOU RELEASE
  999. THE KEY.  ╞OR THE ├128, THE ╬╧ ╙├╥╧╠╠ KEY IS SUPPORTED IN THE NORMAL WAY.
  1000. ╧N THE 64, TO ACHIEVE THE SAME EFFECT, PRESS THE ╥╒╬/╙╘╧╨ KEY WHILE HOLDING
  1001. DOWN THE ├╧╬╘╥╧╠ KEY TO PAUSE OUTPUT UNTIL YOU EXPLICITLY RE-ENABLE IT.  ╘O
  1002. DO THIS, JUST PRESS ╬╧ ╙├╥╧╠╠ (128) OR ├╧╬╘╥╧╠-╙╘╧╨ (64) AGAIN.  ╧N THE 128,
  1003. THE ├┴╨╙ KEY IS SUPPORTED IN THE NORMAL WAY (WITH ├┴╨╙-╤ FIXED), AND TO
  1004. ACTIVATE CAPS LOCK MODE ON THE 64, PRESS ├╧══╧─╧╥┼-╙╘╧╨, AND PRESS IT AGAIN
  1005. TO RELEASE CAPS LOCK MODE.  ╘HE KEY DELAY AND REPEAT RATES ARE NOT USER-
  1006. DEFINABLE RIGHT NOW, BUT THEY WILL BE.  ┴LSO, FUNCTION KEYS WILL BE
  1007. APPLICATION-DEFINABLE (WHERE THE COMMAND SHELL CAN BE CONSIDERED AN
  1008. APPLICATION).  ╙OMETHING THAT YOU MAY FIND ODD IS THAT THE CURSOR COLOR CAN
  1009. BE DIFFERENT FROM THE CHARACTER COLOR.  ─EAL WITH IT.
  1010.  
  1011. ╞ULL INPUT LINE EDITING IS SUPPORTED.  ╠INES MAY BE UP TO 248 CHARACTERS
  1012. LONG, INCLUDING THE CARRIAGE RETURN.  ┘OU CAN DELETE THE CHARACTER BEFORE
  1013. THE CURSOR BY TYPING ─┼╠.  ┘OU CAN USE THE CURSOR ╠┼╞╘ AND ╥╔╟╚╘ KEYS TO
  1014. MOVE THE CURSOR ON THE CURRENT INPUT LINE AND ANY CHARACTERS YOU TYPE WILL
  1015. BE INSERTED BEFORE THE CHARACTER THAT THE CURSOR IS ON.  ├╧-╠┼╞╘ AND
  1016. ├╧-╥╔╟╚╘ (ON THE 128 WITH THE UPPER CURSOR KEYS) MOVE THE CURSOR TO THE
  1017. BEGINNING AND END OF THE CURRENT LINE.  ├╘-╩ AND ├╘-╦ DO THE SAME THING.
  1018. ╫HEN YOU WISH TO GENERATE AN ┼╧╞ (END-OF-FILE) SIGNAL FROM THE KEYBOARD,
  1019. PRESS ├╧╬╘╥╧╠-─.  ╘HIS WILL ONLY WORK ON AN EMPTY LINE; OTHERWISE, YOU WILL
  1020. GET THE ├╘-─ CHARACTER.
  1021.  
  1022. ╔F YOU WISH TO EDIT AND RE-ENTER A PREVIOUS LINE, PRESS THE CURSOR-╒╨ KEY
  1023. WHEN THE SYSTEM PROMPTS YOU FOR AN INPUT LINE.  ╘HIS WILL RECALL THE
  1024. PREVIOUS LINE.  ┘OU CAN PRESS CURSOR-╒╨ AND ─╧╫╬ TO SCAN THROUGH ALL OF THE
  1025. SCROLL BUFFER LINES YOU HAVE ALLOCATED IN THE CONFIGURATION.  ┬UFFERING EACH
  1026. LINE WILL COST YOU 256 BYTES OF FAR MEMORY.
  1027.  
  1028. ╫HEN YOU HAVE SELECTED A PREVIOUS INPUT LINE, YOU CAN EDIT IT OR RE-ENTER IT
  1029. JUST LIKE NORMAL.  ╘HE INSTANT THAT YOU CHANGE OR ENTER THE LINE, IT BECOMES
  1030. THE CURRENT LINE.  ╧THERWISE, IF YOU DON'T CHANGE A PREVIOUS LINE, THEN YOU
  1031. CAN SCROLL BACK DOWN TO THE CURRENT LINE YOU WERE WORKING ON BEFORE.  ╘HIS
  1032. IS USEFUL FOR CHECKING SOME ITEM ON A PREVIOUS LINE AND THEN CONTINUING WITH
  1033. THE CURRENT LINE.  ╫HEN YOU SCROLL BACK TO THE END OF THE HISTORY BUFFER,
  1034. THE BELL WILL RING IF YOU TRY TO SCROLL BACK ANY FARTHER.  ┬LANK LINES ARE
  1035. NOT ENTERED IN THE SCROLLBACK BUFFER.  ┴LSO, ALL LINES RATHER THAN JUST THE
  1036. COMMAND LINES ARE SAVED (ALTHOUGH ╔ MAY RECONSIDER THIS LATER).
  1037.  
  1038. ═ANY APPLICATIONS WILL MAKE USE OF A NUMBER OF KEY COMBINATIONS, SO HERE IS
  1039. A RECOMMENDED SET OF CONTROL CODES AND HOW THEY SHOULD NORMALLY BE
  1040. INTERPRETED BY APPLICATION PROGRAMS.  ╬OTE THAT THE KEYS FOR "@" TO "_",
  1041. USED IN ASSOCIATION WITH SHIFTING KEYS, ARE
  1042. "@┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌[\]^_".  "├╘" MEANS ├ONTROL, "╙╚" MEANS ╙HIFT,
  1043. "┴╠" MEANS ┴LTERNATE, AND "├╧" MEANS ├OMMODORE.  ╧N THE ├64, ┴LTERNATE IS
  1044. OBTAINED BY HOLDING DOWN THE ├OMMODORE AND ├ONTROL KEYS SIMULTANEOUSLY, AND
  1045. "├╙" BELOW MEANS TO HOLD DOWN THE ├OMMODORE AND ╙HIFT KEYS SIMULTANEOUSLY.
  1046. ╘HE "├╙" COMBINATION IS USED TO MAKE THE FUNCTIONS OF KEYS ONLY PROVIDED ON
  1047. THE ├128'S EXTENDED KEYBOARD AVAILABLE ON THE ├64.
  1048.  
  1049. ├╧─┼(S)   ├128 ╦┼┘(S)    ├64 ╦┼┘(S)     ─┼╙├╥╔╨╘╔╧╬
  1050. -------   ------------   ------------   -----------
  1051. $5C       ┬RITISH╨OUND   ┬RITISH╨OUND   (\) THE BACKSLASH CHARACTER
  1052. $5E       ╒P┴RROW        ╒P┴RROW        (^) THE CARRET CHARACTER
  1053. $5F       ┬ACK┴RROW      ┬ACK┴RROW      (_) THE UNDERSCORE CHARACTER
  1054. $C0       ╙╚-*           ╙╚-*           (└) THE BACK-QUOTE CHARACTER
  1055. $DB       ╙╚-+           ╙╚-+           (█) THE LEFT-CURLY-BRACE CHARACTER
  1056. $DC       ╙╚-┬RIT╨OUND   ╙╚-┬RIT╨OUND   (▄) THE VERTICAL-BAR CHARACTER
  1057. $DE       ╙╚-- (MINUS)   ╙╚-- (MINUS)   (▌) THE RIGHT-CURLY-BRACE CHARACTER
  1058. $DF       ╙╚-┬ACK┴RROW   ╙╚-┬ACK┴RROW   THE HOUSE CHARACTER (─┼╠ IN ┴╙├╔╔)
  1059.  
  1060. ├╧─┼(S)   ├128 ╦┼┘(S)    ├64 ╦┼┘(S)     ─┼╙├╥╔╨╘╔╧╬
  1061. -------   ------------   ------------   -----------
  1062. $20-$3F   ╙╨┴├┼ TO "?"   ╙╨┴├┼ TO "?"   ╥EGULAR NUMBERS AND PUNCTUATION
  1063. $40-$5F   "@" TO "_"     "@" TO "_"     ╥EGULAR LOWERCASE LETTERS
  1064. $60-$7F   ┴╠-@ TO ┴╠-_   <UNDECIDED>    ┴LTERNATE KEYS
  1065. $A0-$BF   ├╧-@ TO ├╧-_   ├╧-@ TO ├╧-_   ├OMMODORE KEYS
  1066. $C0-$DF   "└" TO ╚╧╒╙┼   "└" TO ╚╧╒╙┼   ╥EGULAR UPPERCASE LETTERS
  1067. $E0-$EF   ├╘-@ TO ├╘-_   ├╘-@ TO ├╘-_   ├ONTROL KEYS
  1068.  
  1069. ├╧─┼(S)   ├128 ╦┼┘(S)    ├64 ╦┼┘(S)     ─┼╙├╥╔╨╘╔╧╬
  1070. -------   ------------   ------------   -----------
  1071. $00       <NONE>         <NONE>         <CANNOT BE GENERATED-╔ MAY CHANGE THIS>
  1072. $01       ├╘-╥┼╘╒╥╬      ├╘-╥┼╘╒╥╬      ┼ND OF FILE
  1073. $02       ╙╚-╘┴┬         ├╙-╥           ┬ACKTAB
  1074. $03       ╙╘╧╨           ╙╘╧╨           ╙TOP SOME OPERATIONS
  1075. $04       ╚┼╠╨           ├╙-╚           ├ONTEXT-SENSITIVE HELP
  1076. $05       ├╘-2           ├╘-2           ╫HITE
  1077. $06       ╙╚-╠┼╞╘        ├╙-┬           ╫ORD LEFT
  1078. $07       ╙╚-╠╔╬┼╞┼┼─    ├╙-╨           ═ENU EXIT
  1079. $08       ├╧-─┼╠         ├╧-─┼╠         ╥UBOUT CHARACTER UNDER CURSOR
  1080. $09       ╘┴┬            ├╙-╘           ╘AB
  1081. $0A       ╠╔╬┼╞┼┼─       ├╙-╠           ═ENU
  1082. $0B       ╙╚-╥╔╟╚╘       ├╙-╬           ╫ORD RIGHT
  1083. $0C       ├╧-╒╨          ├╙-╫           ╟OTO TOP OF DOCUMENT
  1084. $0D       ╥┼╘╒╥╬         ╥┼╘╒╥╬         ╥ETURN
  1085. $0E       ╙╚-┼╙├┴╨┼      ├╙-─           ╫INDOW CONTROL
  1086. $0F       ├╧-─╧╫╬        ├╙-┌           ╟OTO BOTTOM OF DOCUMENT
  1087. $10       ├╧-╠┼╞╘        ├╙-┴           ╟OTO BEGINNING OF LINE
  1088. $11       ─╧╫╬           ─╧╫╬           ├URSOR DOWN
  1089. $12       ├╘-9           ├╘-9           ╥VS
  1090. $13       ╚╧═┼           ╚╧═┼           ╚OME
  1091. $14       ─┼╠            ─┼╠            ┬ACKSPACE
  1092. $15       ├╧-╥╔╟╚╘       ├╙-╙           ╟OTO END OF LINE
  1093. $16       ├╘-╒╨          ├╙-╔           ╨AGE UP
  1094. $17       ├╘-─╧╫╬        ├╙-═           ╨AGE DOWN
  1095. $18       ├╘-╘┴┬         ├╙-┘           ╘AB SET
  1096. $19       ├╘-╠┼╞╘        ├╙-╩           ╨AGE LEFT
  1097. $1A       ├╘-╥╔╟╚╘       ├╙-╦           ╨AGE RIGHT
  1098. $1B       ┼╙├┴╨┼         ├╙-┼           ┼SCAPE
  1099. $1C       ├╘-3           ├╘-3           ╥ED
  1100. $1D       ╥╔╟╚╘          ╥╔╟╚╘          ├URSOR RIGHT
  1101. $1E       ├╘-6           ├╘-6           ╟REEN
  1102. $1F       ├╘-7           ├╘-7           ┬LUE
  1103.  
  1104. ├╧─┼(S)   ├128 ╦┼┘(S)    ├64 ╦┼┘(S)     ─┼╙├╥╔╨╘╔╧╬
  1105. -------   ------------   ------------   -----------
  1106. $80       ├╘-╞1          ├╘-╞1          ╞UNCTION KEY 9
  1107. $81       ├╧-1           ├╧-1           ╧RANGE/╨URPLE(?)
  1108. $82       ├╘-╞3          ├╘-╞3          ╞UNCTION KEY 10
  1109. $83       ╙╚-╙╘╧╨        ╙╚-╙╘╧╨        ╥UN
  1110. $84       ╙╚-╚┼╠╨        ├╙-╟           ├ONTEXT-INSENSITIVE HELP
  1111. $85       ╞1             ╞1             ╞UNCTION KEY 1
  1112. $86       ╞3             ╞3             ╞UNCTION KEY 3
  1113. $87       ╞5             ╞5             ╞UNCTION KEY 5
  1114. $88       ╞7             ╞7             ╞UNCTION KEY 7
  1115. $89       ╙╚-╞1          ╙╚-╞1          ╞UNCTION KEY 2
  1116. $8A       ╙╚-╞3          ╙╚-╞3          ╞UNCTION KEY 4
  1117. $8B       ╙╚-╞5          ╙╚-╞5          ╞UNCTION KEY 6
  1118. $8C       ╙╚-╞7          ╙╚-╞7          ╞UNCTION KEY 8
  1119. $8D       ╙╚-╥┼╘╒╥╬      ╙╚-╥┼╘╒╥╬      <UNDECIDED>
  1120. $8E       ├╘-╞5          ├╘-╞5          ╞UNCTION KEY 11
  1121. $8F       ├╘-╞7          ├╘-╞7          ╞UNCTION KEY 12
  1122. $90       ├╘-1           ├╘-1           ┬LACK
  1123. $91       ╒╨             ╒╨             ├URSOR UP
  1124. $92       ├╘-0           ├╘-0           ╥VS OFF
  1125. $93       ╙╚-╚╧═┼        ╙╚-╚╧═┼        ├LEAR SCREEN
  1126. $94       ╙╚-─┼╠┼╘┼      ╙╚-─┼╠┼╘┼      ╔NSERT ONE SPACE
  1127. $95       ├╧-2           ├╧-2           ┬ROWN
  1128. $96       ├╧-3           ├╧-3           ╠IGHT RED
  1129. $97       ├╧-4           ├╧-4           ─ARK GRAY
  1130. $98       ├╧-5           ├╧-5           ═EDIUM GRAY/DARK CYAN(?)
  1131. $99       ├╧-6           ├╧-6           ╠IGHT GREEN
  1132. $9A       ├╧-7           ├╧-7           ╠IGHT BLUE
  1133. $9B       ├╧-8           ├╧-8           ╠IGHT GRAY
  1134. $9C       ├╘-5           ├╘-5           ═AGENTA
  1135. $9D       ╠┼╞╘           ╠┼╞╘           ├URSOR LEFT
  1136. $9E       ├╘-8           ├╘-8           ┘ELLOW
  1137. $9F       ├╘-4           ├╘-4           ├YAN
  1138.  
  1139. ╞OR THE ─VORAK KEY MATRIX, THE FOLLOWING COMBINATION OF ─VORAK AND ├OMMODORE
  1140. IS USED ON THE BASIC KEYBOARD:
  1141.  
  1142.     +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
  1143.     ▄ _ ▄ 1 ▄ 2 ▄ 3 ▄ 4 ▄ 5 ▄ 6 ▄ 7 ▄ 8 ▄ 9 ▄ 0 ▄ + ▄ - ▄ \ ▄HOM▄DEL▄
  1144.     +---------------------------------------------------------------+
  1145.     ▄CTRL ▄ @ ▄ , ▄ . ▄ ╨ ▄ ┘ ▄ ╞ ▄ ╟ ▄ ├ ▄ ╥ ▄ ╠ ▄ / ▄ * ▄ ^ ▄RESTR▄
  1146.     +---------------------------------------------------------------+
  1147.     ▄STP▄SHL▄ ┴ ▄ ╧ ▄ ┼ ▄ ╒ ▄ ╔ ▄ ─ ▄ ╚ ▄ ╘ ▄ ╬ ▄ ╙ ▄ ; ▄ = ▄ RETURN▄
  1148.     +---------------------------------------------------------------+
  1149.     ▄ ├=▄SHIFT▄ : ▄ ╤ ▄ ╩ ▄ ╦ ▄ ╪ ▄ ┬ ▄ ═ ▄ ╫ ▄ ╓ ▄ ┌ ▄SHIFT▄ V ▄-> ▄
  1150.     +---+-----+---+---+---+---+---+---+---+---+---+---+-----+---+---+
  1151.  
  1152. ┴LL OF THE KEYS ARE MOVED AS A UNIT, SO SHIFTING A KEY WILL PRODUCE THE SAME
  1153. RESULT AS THE CORRESPONDING KEY IN THE STANDARD ├OMMODORE ╤WERTY LAYOUT.
  1154. ╘HE EXTENDED KEYS REMAIN THE SAME.  ╔F YOU WANT TO REDEFINE THE KEY MATRIX
  1155. YOURSELF, THEN LOOK IN THE "ACEKEY-DVORAK.S" FOR MORE INFORMATION.  ╔T IS AN
  1156. ┴├┼-ASSEMBLER SOURCE FILE THAT ENCODES THE TRANSLATION TABLES.
  1157.  
  1158. 5.5 ╒╙┼╥-╨╧╥╘ ╔╬╘┼╥-═┴├╚╔╬┼ ╬┼╘╫╧╥╦ ─┼╓╔├┼
  1159.  
  1160. ╘HE DEVICE FOLLOWS FROM WHAT WAS OUTLINED IN ISSUE #8 OF ├= ╚ACKING NET
  1161. MAGAZINE.  ╔T ALLOWS YOU TO SEND BYTES OF DATA FROM ONE COMPUTER TO ANOTHER,
  1162. WHICH IS ALL THAT ANY NETWORK, NO MATTER HOW COMPLICATED, ACTUALLY DOES.
  1163. ╫ITH THIS ABILITY, YOU CAN WRITE ARBITRARILY COMPLEX DISTRIBUTED
  1164. APPLICATIONS.  ╫ELL, BEFORE WE GET TOO GRAND, THE "NETWORK" IS CURRENTLY
  1165. LIMITED TO ONLY CONNECTING TWO COMPTERS TOGETHER.  ╚ERE IS HOW THE WIRING
  1166. GOES IF YOU WANT TO MAKE YOUR OWN NETWORK CABLE:
  1167.  
  1168. ╚OST-┴  NAME/PIN                                      PIN/NAME  ╚OST-┬
  1169.          ╟╬─ <┴>+------------------------------------+<┴> ╟╬─
  1170.         ╞╠┴╟ <┬>+------------------------------------+<8> ╨├2 ***
  1171.          ╨┬0 <├>+------------------------------------+<├> ╨┬0
  1172.          ╨┬1 <─>+------------------------------------+<─> ╨┬1
  1173.          ╨┬2 <┼>+------------------------------------+<┼> ╨┬2
  1174.          ╨┬3 <╞>+------------------------------------+<╞> ╨┬3
  1175.          ╨┬4 <╚>+------------------------------------+<╚> ╨┬4
  1176.          ╨┬5 <╩>+------------------------------------+<╩> ╨┬5
  1177.          ╨┬6 <╦>+------------------------------------+<╦> ╨┬6
  1178.          ╨┬7 <╠>+------------------------------------+<╠> ╨┬7
  1179.          ╨┴2 <═>+------------------------------------+<═> ╨┴2
  1180.          ╟╬─ <╬>+------------------------------------+<╬> ╟╬─
  1181.         ├╬╘2 <6>+------------------------------------+<6> ├╬╘2
  1182.          ╙╨2 <7>+------------------------------------+<7> ╙╨2
  1183.          ╨├2 <8>+------------------------------------+<┬> ╞╠┴╟ ***
  1184.  
  1185. ╚ERE IS THE ├OMMODORE 128/64 ╒SER ╨ORT WHEN LOOKING AT THE BACK OF THE UNIT:
  1186.  
  1187.                              111
  1188.      (OTHER)        123456789012    TOP          (EDGE OF)
  1189.      (PORTS)        ------------                 (MACHINE)
  1190.                     ┴┬├─┼╞╚╩╦╠═╬    BOTTOM
  1191.  
  1192. ┘OU WILL NEED TWO APPROPRIATE CONNECTORS AND SOME 14-CONDUCTOR RIBBON CABLE
  1193. TO BUILD THE NETWORK.  ╧NE OF MY CONNECTORS IS A 44-CONDUCTOR CONNECTOR OF
  1194. THE TYPE USED WITH THE ╓╔├-20 EXPANSION PORT THAT ╔ SAWED IN HALF AND THE
  1195. CABLE IS SOME OLD JUNK RIBBON CABLE THAT WAS LYING AROUND THAT ╔ REMOVED
  1196. SOME OF THE CONDUCTORS FROM.  ┴NY OLD JUNK WILL DO.  ┘OU'RE PROBABLY BEST
  1197. OFF IF YOUR CABLE IS LESS THAN TWO METRES LONG (SIX FEET).
  1198.  
  1199. ╘HERE ARE TWO SOFTWARE PROTOCOLS IMPLEMENTED FOR TRANSMITTING BYTES OVER THE
  1200. NETWORK: ╥AW AND ╨ACKET.  ╘HE ╥AW PROTOCOL JUST SENDS THE RAW BYTES USING
  1201. ONLY THE HARDWARE HANDSHAKING.  ╘HIS SHOULD BE SUITABLE FOR USE WITH
  1202. PARALLEL- PORT PRINTERS.  ╘HE ╨ACKET PROTOCOL WRITES THREE BYTES OF HEADER
  1203. INFORMATION PLUS THE GIVEN DATA FOR EACH "WRITE" OPERATION TO THE DEVICE.
  1204. ╘HE HEADER INFORMATION CONSISTS OF THE VALUE $┼6, FOLLOWED BY THE LOW BYTE
  1205. OF THE NUMBER OF DATA BYTES TO FOLLOW, FOLLOWED BY THE HIGH BYTE OF THE
  1206. COUNT, FOLLOWED BY THE DATA BYTES THEMSELVES.  ╘HIS PROTOCOL ALLOWS THE
  1207. OTHER END TO KNOW WHAT THE PACKET BOUNDARIES ARE, AND PACKET BOUNDARIES ARE
  1208. NEEDED FOR INTERACTIVE INTERPROCESS COMMUNICATION, SUCH AS WITH ╥╨├S (╥EMOTE
  1209. ╨ROCEDURE ├ALLS).   ╘HE IMPLEMENTED PROTOCOL ALSO SENDS A PACKET WITH ZERO
  1210. USER-DATA BYTES OUT WHEN YOU USE THE "CLOSE" SYSTEM CALL ON THE USER-PORT
  1211. DEVICE, SO THE ╨ACKET PROTOCOL IS ALSO USEFUL FOR TRANSFERRING FILES FROM
  1212. ONE MACHINE TO ANOTHER┴.
  1213.  
  1214. ┬UT, SINCE THE NETWORK IS INHERENTLY HALF-DUPLEX (DATA CAN ONLY FLOW IN ONE
  1215. DIRECTION AT A TIME), YOU MUST BE VERY CAREFUL ABOUT COORDINATING THINGS SO
  1216. THAT YOU ALWAYS HAVE ONE TRANSMITTER AND ONE RECEIVER WHENEVER YOU ARE
  1217. TRANSFERRING DATA.  ╔F BOTH HOSTS TRY TO RECEIVE OR BOTH TRY TO TRANSMIT AT
  1218. THE SAME TIME, THEY WILL BOTH DEADLOCK FOREVER (OR UNTIL YOU RESET THEM).
  1219.  
  1220. ┴S AN EXAMPLE, IF YOU WANTED TO TRANSFER A FILE OVER THE NETWORK, YOU
  1221. WOULD ENTER THE FOLLOWING ON THE RECEIVING COMPUTER:
  1222.  
  1223. CAT U: >FILE
  1224.  
  1225. AND THE FOLLOWING ON THE TRANSMITTING COMPUTER:
  1226.  
  1227. CAT FILE >U:
  1228.  
  1229. ╘HE DEVICE OPERATES MUCH LIKE A ╒NIX "PIPE".  ┘OU CAN ALSO USE THE "CP" OR
  1230. "BCODE" OR WHATEVER AND YOU THE ORDER IN WHICH YOU START THE TRANSMITTER/
  1231. RECEIVER DOESN'T MATTER.  ╘HE PACKET SIZE ON THE NETWORK IS VARIABLE AND IS
  1232. DEFINED BY THE SIZE OF WRITE CALL THAT THE TRANSMITTER PERFORMS A WRITE
  1233. OPERATION.
  1234.  
  1235. ╞LOW-CONTROL HANDSHAKING IS PERFORMED FOR EACH BYTE SENT, SO THE WRITER WILL
  1236. BE DELAYED IN THE WRITE SYSTEM CALL UNTIL THE RECEIVER HAS RECEIVED EVERY
  1237. LAST BYTE OF THE PACKET BY PERFORMING APPROPRIATE READ OPERATIONS.  ╘HIS
  1238. MEANS THAT THE WRITER WILL OPERATE SYNCHRONOUSLY WITH THE READER IF THE
  1239. RECEIVE BUFFER (READ SIZE) IS SMALLER THAN THE TRANSMIT BUFFER (WRITE SIZE)
  1240. AND THAT THE WRITER WILL OPERATE ASYNCHRONOUSLY (*CONCURRENTLY*) WITH THE
  1241. RECEIVER IF THE RECEIVE BUFFER IS LARGER THAN OR EQUAL IN SIZE TO THE
  1242. TRANSMIT BUFFER.  ├ONCURRENCY IS GOOD.  ┴LSO, READS WILL SOMETIMES RETURN
  1243. "SHORT BLOCKS", BLOCKS WITH FEWER BYTES THAN THE READ REQUEST SPECIFIED.
  1244. ╘HIS IS TO ALLOW THE DEVICE TO BE TRULY PACKET-ORIENTED, WHICH CAN ALLOW
  1245. CLIENT/SERVER-TYPE INTERACTIONS OVER THE HALF-DUPLEX COMMUNICATION LINE.
  1246.  
  1247. ╘HE MAXIMUM TRANSFER RATE IS CURRENTLY AROUND 40╦/SEC.  ╘HE MAXIMUM RATE
  1248. POSSIBLE, IF SOFTWARE WERE AS EFFICIENT AS POSSIBLE, WOULD BE ABOUT 80╦/SEC
  1249. WITH TWO ╞AST-MODE ├128S.
  1250.  
  1251. 5.6. ╙╫╔╞╘╠╔╬╦-232 ─┼╓╔├┼
  1252.  
  1253. ╘HIS DEVICE DRIVER SUPPORTS ├REATIVE ═ICRO ─ESIGN'S ╙WIFT╠INK-232 CARTRIDGE,
  1254. WHICH IS BASED ON THE 6551 ┴├╔┴ CHIP.  ╘HE WAY TO CONFIGURE THE OPERATION OF
  1255. THIS DEVICE (RECEIVE-BUFFER SIZE, BAUD RATE, WORD-LENGTH/PARITY/STOP-BITS)
  1256. WAS DISCUSSED IN THE ╙YSTEM ├ONFIGURATION SECTION.  ├URRENTLY, THE DEVICE
  1257. WILL WORK ONLY FROM ╔/╧ SLOT $─┼00, AND ╔ DON'T REALLY HAVE ANY PLANS TO
  1258. CHANGE THIS, SINCE IT WOULD BE A PAIN TO DO, UNLESS THERE IS OVERWHELMING
  1259. DEMAND.
  1260.  
  1261. ╚ERE ARE A COUPLE OF NOTES ABOUT THE DEVICE DRIVER.  ╔T WILL OPERATE
  1262. FLAWLESSLY AT 38,400 BAUD ON BOTH THE ├128 AND ├64.  ┴T THIS SPEED, THE
  1263. MACHINE WILL HAVE TO PROCESS 3840 INTERRUPTS PER SECOND, WHICH MEANS THAT IT
  1264. HAS ONLY 266 SLOW TICKS (╬╘╙├) PER CHARACTER RECEIVED.  ╘HE DEVICE DRIVER
  1265. ALSO IMPLEMENTS HARDWARE FLOW CONTROL OUT OF PRACTICAL NECESSITY.  ╔F YOU
  1266. ARE OPERATING AT 38,400 BAUD, THEN IT IS LIKELY THAT (A) WHATEVER YOU'RE
  1267. CONNECTED TO SUPPORTS HARDWARE FLOW CONTROL (╚╞├), AND (B) THAT YOUR
  1268. APPLICATION WON'T BE ABLE TO KEEP UP ALL OF THE TIME.  ╘HE ╚╞├ WORKS
  1269. FLAWLESSLY AS FAR AS ╔ HAVE TESTED.  ┬ECAUSE OF THE IMMEDIACY OF ╚╞├, THE
  1270. DEVICE WILL ASSERT ╚╞├ WHEN THERE ARE FEWER THAN 8 BYTES FREE IN THE RECEIVE
  1271. BUFFER (A SMALL LIMIT) AND WILL RELEASE IT WHERE THERE ARE 16 OR MORE BYTES
  1272. FREE IN THE RECEIVE BUFFER.
  1273.  
  1274. ┴N UNFORTUNATE HARDWARE RESTRICTION OF THE 6551 ┴├╔┴ IS THAT IT CANNOT
  1275. TRANSMIT DATA WHILE THE ╚╞├ IS ASSERTED.  ╘HIS MAKES CONTROLLING TRANSMIT
  1276. DATA MORE COMPLICATED BUT ALSO MAKES IT SO THAT THE ╥╘╙/├╘╙ SIGNALS
  1277. SIMULTANEOUSLY WORK ACCORDING TO THEIR STANDARD DEFINITIONS AND ALSO TO
  1278. THEIR NEWER FLOW-CONTROL DEFINITIONS.  ╘HIS IS OKAY, SINCE NEWER HIGH-SPEED
  1279. MODEMS USUALLY INTERPRET THESE SIGNALS IN THE FLOW-CONTROL WAY AND OLDER
  1280. MODEMS ARE LIKELY TO OPERATE AT A BAUD RATE WHERE FLOW CONTROL IS NOT
  1281. NEEDED.  ╬OTE THAT IF FLOW CONTROL IS IGNORED BY YOUR MODEM AND THE RECEIVE
  1282. BUFFER OVERFLOWS, THEN YOU ╫╔╠╠ LOSE CHARACTERS.  ╘HE ╙╠ DRIVER COLLECTS
  1283. STATISTICS ABOUT THIS (NUMBER OF HARDWARE OVERRUNS, NUMBER OF
  1284. SOFTWARE-BUFFER OVERFLOWS, NUMBER OF BYTES SENT, NUMBER OF BYTES RECEIVED).
  1285.  
  1286. ╘HE ╙WIFT╠INK DRIVER DOES NOT USE TRANSMIT INTERRUPTS.  ╘HIS IS BECAUSE
  1287. HAVING BOTH TYPES OF INTERRUPTS IS AN UGLY PROBLEM AND MAY BE TOO MUCH FOR
  1288. THE PROCESSOR TO KEEP UP WITH.  ╔NSTEAD, THE ╙╠ DRIVER USES POLLED
  1289. TRANSMISSION.  ╔N THE CONTEXT OF A TERMINAL PROGRAM, THIS IS NORMALLY NO
  1290. REAL PROBLEM, SINCE NORMALLY ONLY ONE OR A FEW BYTES ARE TRANSMITTED AT A
  1291. TIME (WITH EACH KEYSTROKE).  ╔N THE EVENT THAT ╚╞├ IS ASSERTED WHEN THE
  1292. DRIVER GOES TO TRANSMIT A BYTE, IT WILL PUT THE BYTE INTO THE TRANSMIT
  1293. BUFFER AND RETURN WITHOUT TRANSMITTING THE BYTE.  ╘HIS IS BECAUSE THE SYSTEM
  1294. WOULD DEADLOCK IF IT WAITED FOR A TRANSMIT-READY SIGNAL, SINCE IT WILL NEVER
  1295. GET ONE AS LONG AS ╚╞├ IS ASSERTED.  ├ONTROL IS RETURNED TO THE USER PROGRAM
  1296. TO CLEAR OUT THE RECEIVE BUFFER SO THAT ╚╞├ CAN BE RELEASED AND BYTES CAN BE
  1297. TRANSMITTED.  ╫HEN ╚╞├ IS RELEASED BY A "READ" SYSTEM CALL, THE ╙╠ DRIVER
  1298. WILL TRANSMIT ALL BUFFERED TRANSMIT CHARACTERS IN A POLLING LOOP BEFORE
  1299. RETURNING.  ├URRENTLY, IF THE TRANSMIT BUFFER OVERFLOWS, THE OVERFLOW
  1300. CHARACTERS ARE SIMPLY DROPPED.  ╔N THE FUTURE, THE "WRITE" CALL WILL RETURN
  1301. WITH AN ERROR WITH INFORMATION ABOUT HOW MANY CHARACTERS WERE SUCCESSFULLY
  1302. BUFFERED FOR FUTURE TRANSMISSION, SO THAT IT CAN RECOVER ON ITS OWN.
  1303.  
  1304. ╘HE DEVICE-DRIVER CODE IS FAIRLY COMPLICATED BECAUSE OF ALL THE HARDWARE
  1305. RESTRICTIONS AND RACE-CONDITION HANDLING IN THE CODE.
  1306.  
  1307. 5.7. ╙═┴╥╘_╫┴╘├╚ ─┼╓╔├┼
  1308.  
  1309. ╘HE "CONFIG" PROGRAM WILL ATTEMPT TO READ THE CURRENT TIME FROM THE
  1310. ╙MART╫ATCH DEVICE YOU HAVE PLUGGED INTO PORT #1 IF YOU SET A "TIME-DEVICE"
  1311. FIELD IN THE SYSTEM CONFIGURATION TO THE SPECIAL VALUE OF 254.  ╘HE CODE WAS
  1312. DONATED BY ╥ANDY ╫EEMS <╥ED ╚ERRING ├ORP.> (RWEEMS@EDGE.ERCNET.COM) AND HAS
  1313. BEEN INTEGRATED INTO THE CONFIGURATION PROGRAM.  ╥ANDY SAYS:
  1314.  
  1315. ╔F YOU'RE WONDERING WHAT A ╙MART╫ATCH IS...IT'S A COOL LITTLE PASS-THROUGH
  1316. SOCKET ORIGINALLY DESIGNED FOR ╨├S ╔ THINK (AND ┴PPLES) THAT GIVES YOU A
  1317. BATTERY BACKED CLOCK IN A TRANSPARENT MANNER.  ┘OU REMOVE A ╥╧═, PLUG THE
  1318. ╙MART╫ATCH INTO THE ╥╧═'S SOCKET AND PLUG THE ╥╧═ INTO THE ╙MART╫ATCH
  1319. SOCKET.  ╔F YOU HAVE A DRIVER THAT READS FROM THE ╥╧═ IN JUST THE RIGHT
  1320. SEQUENCE, THE ╙MART╫ATCH KICKS IN AND SENDS THE DATE/TIME ONE BIT AT A
  1321. TIME.  ╧F COURSE, THERE'S ALWAYS THE POSSIBILITY THAT THE ╥╧═ COULD
  1322. ACCIDENTALLY BE READ IN THE SEQUENCE THAT TRIGGERS THE ╙MART╫ATCH, BUT IT'S
  1323. EXTREMELY UNLIKELY.
  1324.  
  1325. ┴NYWAY, ╔ NEVER COULD GET IT TO WORK "PROPERLY" ON MY 128─ (BY PLUGGING IT
  1326. INTO A ╥╧═'S SOCKET), BUT ╔ FOUND PLANS FOR HOOKING IT UP TO JOYSTICK PORT 1
  1327. AND DRIVERS FOR ╟┼╧╙.  ╔T DOESN'T INTERFERE WITH THE JOYSTICK PORT OR
  1328. KEYBOARD AT ALL.
  1329. ------------------------------------------------------------------------------
  1330. 6. ├╧══┴╬─╙
  1331.  
  1332. ╘HE FOLLOWING SUBSECTIONS GIVE THE LOW DOWN ON ALL OF THE EXECUTABLE PROGRAMS
  1333. PROVIDED WITH ┴├┼, INCLUDING THE SYSTEM PROGRAMS AND EXTERNAL USER PROGRAMS.
  1334. ╞OR EACH COMMAND, A SYNOPSIS IS GIVEN, FOLLOWED BY THE DESCRIPTION.
  1335.  
  1336. 6.1. ┬╒╔╠╘-╔╬ ├╧══┴╬─╙
  1337.  
  1338. ╘HESE COMMANDS ARE BUILT RIGHT INTO THE COMMAND SHELL.
  1339. --------
  1340. ECHO [ARG ...]
  1341.  
  1342. ╨RINT THE GIVEN ARGUMENTS TO STDOUT, WITH A SPACE BETWEEN EACH AND A CARRIAGE
  1343. RETURN AT THE END OF THE LINE.
  1344. --------
  1345. CLEAR
  1346. CLS
  1347.  
  1348. ├LEAR THE SCREEN.  "CLS" IS THE ═╙-─╧╙ NAME AND "CLEAR" IS THE ╒NIX NAME.
  1349. ╘HIS COMMAND SIMPLY EMITS A "FORM-FEED" CHARACTER TO STDOUT.
  1350. --------
  1351. LS   [-HELP] [-L] [-C] [-F] [DIRNAME ...]
  1352. DIR  [-HELP] [-L] [-C] [-F] [DIRNAME ...]
  1353. D    [-HELP] [-L] [-C] [-F] [DIRNAME ...]
  1354. CLSL [-HELP] [-L] [-C] [-F] [DIRNAME ...]
  1355.  
  1356. ─ISPLAY A DIRECTORY LISTING OF THE GIVEN DIRECTORY OR OF THE CURRENT
  1357. DIRECTORY IF NO "DIRNAME" IS GIVEN.  ╘HIS COMMAND HAS SO MANY VARIANTS
  1358. BECAUSE IT IS SO USEFUL.  "DIR" CLEARS THE SCREEN BEFORE GIVING A LONG-FORM
  1359. DIRECTORY LISTING.  "D" GIVES A LONG-FORM DIRECTORY LISTING WITHOUT CLEARING
  1360. THE SCREEN.  "LS" GIVES A SHORT-FORM DIRECTORY LISTING WITHOUT CLEARING THE
  1361. SCREEN, AND "CLSL" GIVES A SHORT-FORM LISTING AFTER CLEARING THE SCREEN.
  1362.  
  1363. ╙HORT-FORM LISTINGS INCLUDE ONLY THE FILENAMES OF THE FILES IN THE
  1364. DIRECTORY, WHEREAS LONG-FORM LISTINGS INCLUDE DIRECTORY NAME, FILE
  1365. PERMISSIONS, DATE AND TIME OF LAST MODIFICATION, LENGTH (IN BLOCKS*254
  1366. BYTES), FILE TYPE, AND FILENAME.  ╧N 40-COL DISPLAYS, THE DATE AND TIME
  1367. FIELDS ARE OMITTED.
  1368.  
  1369. ╘HE "-HELP" FLAG WILL MAKE THE COMMAND PRINTS ITS USAGE INFORMATION, "-L"
  1370. WILL REQUEST A LONG-FORM LISTING, "-C" WILL REQUEST THAT THE SCREEN BE
  1371. CLEARED FIRST BEFORE SHOWING THE LISTING, AND THE "-F" FLAG WILL REQUEST
  1372. THAT THE NUMBER OF FILES AND THE TOTAL SIZE IN BYTES OF ALL THE FILES BE
  1373. DISPLAYED IN ADDITION TO THE NUMBER OF BYTES FREE ON THE DEVICE FOR A
  1374. LONG-FORM LISTING (NOTE THAT ONLY FILES ARE INCLUDED IN THE COUNT AND BYTES
  1375. DATA; DIRECTORIES ARE NOT).
  1376. --------
  1377. CD [DIRNAME]
  1378.  
  1379. ├HANGE THE CURRENT WORKING DEVICE AND DIRECTORY TO THE GIVEN DIRECTORY NAME.
  1380. ╔F NO DIRECTORY NAME IS GIVEN, CHANGE TO THE "HOME" (INITIAL) DIRECTORY.
  1381. --------
  1382. CAT [FILE ...]
  1383.  
  1384. ─ISPLAY THE CONTENTS OF THE NAMED FILES TO STDOUT.  ╔F NO FILES ARE NAMED,
  1385. THEN INPUT IS TAKEN FROM STDIN (NORMALLY THE KEYBOARD).
  1386. --------
  1387. EXIT
  1388. X
  1389.  
  1390. ┼XIT FROM THE COMMAND SHELL.  ┼╧╞ ON STDIN (NORMALLY ├ONTROL-─ FROM THE
  1391. KEYBOARD) HAS THE SAME EFFECT.  ╔F THE CURRENT COMMAND SHELL IS THE INITIAL
  1392. ONE STARTED BY THE SYSTEM (PROCESS #2), THEN ┴├┼ WILL EXIT BACK TO ┬┴╙╔├.
  1393. ╧THERWISE, THE COMMAND SHELL WILL EXIT BACK TO THE PROGRAM THAT INVOKED IT.
  1394. --------
  1395. DOS COMMAND
  1396. @   COMMAND
  1397.  
  1398. ╟IVE A ├OMMODORE-─╧╙ COMMAND TO THE CURRENT DEVICE (╧╨┼╬1,DV,15..).  ┬OTH
  1399. "DOS" AND "@" ARE EXACTLY SYNONYMOUS.
  1400. --------
  1401. PATH
  1402. PATH DIRNAME ...
  1403.  
  1404. ─ISPLAY OR SET THE PATH TO SEARCH FOR SEARCHING FOR EXTERNAL PROGRAMS.
  1405. "PATH" ALONE ON A COMMAND LINE DISPLAYS THE CURRENT SEARCH PATH, AND "PATH"
  1406. FOLLOWED BY ARGUMENTS WILL SET THE SEARCH PATH TO THE FOLLOWING ARGUMENTS.
  1407. --------
  1408. SH [-VI] [SCRIPTNAME]
  1409.  
  1410. ╔NVOKE A SUB-SHELL.  ├URRENTLY, THIS IS ACTUALLY AN EXTERNAL-COMMAND CALL.
  1411. ╔F THE "-V" FLAG (VERSION/VERBOSE) IS USED, THEN THE VERSION "BANNER" IS
  1412. PRINTED WHEN THE SHELL STARTS, AND "-I" (INITIALIZE) WILL CAUSE THE NEW
  1413. SHELL TO EXECUTE THE ".ASHRC" SHELL SCRIPT BEFORE ACCEPTING COMMANDS FROM
  1414. ITS REGULAR INPUT FILE.
  1415.  
  1416. ╔F THE "SCRIPTNAME" ARGUMENT IS SUPPLIED, THEN INPUT IS TAKEN FROM THE NAMED
  1417. FILE; OTHERWISE, INPUT COMMANDS ARE TAKEN FROM STDIN.
  1418. ------------------------------------------------------------------------------
  1419. 6.2. ╙┘╙╘┼═ ╨╥╧╟╥┴═╙
  1420.  
  1421. ACE
  1422.  
  1423. ╘HIS IS THE MAIN LOADER.  ╔T DETERMINES WHETHER IT IS RUNNING ON A 128 OR A
  1424. 64 AND THEN LOADS AND RUNS EITHER "ACE128" OR "ACE64" BELOW.
  1425. --------
  1426. ACE128
  1427. ACE64
  1428.  
  1429. ╘HESE ARE THE KERNEL PROGRAMS.
  1430. --------
  1431. CONFIG
  1432.  
  1433. ╘HE SYSTEM CONFIGURATION PROGRAM.  ╘HIS IS NOT A USER-EXECUTABLE PROGRAM; IT
  1434. IS LOADED AND EXECUTED WHILE THE SYSTEM IS BOOTSTRAPPING.  ╘HIS PROGRAM
  1435. LOADS THE ".ACERC", "ACE-CHARSET", AND "ACE-CHARSET-4BIT" FILES, INITIALIZES
  1436. THE DYNAMICALLY ALLOCATED MEMORY, AND SETS THE DATE.
  1437. --------
  1438. CONFIG.EDIT
  1439.  
  1440. ╘HE CONFIGURATION EDITOR WRITTEN IN ┬┴╙╔├.  ╠╧┴─ AND ╥╒╬ IT DIRECTLY FROM
  1441. ┬┴╙╔├.  ╞ULL-SCREEN INTERFACE.  ╙AME PROGRAM RUNS ON EITHER A 128 OR 64.
  1442. ------------------------------------------------------------------------------
  1443. 6.3. ┼╪╘┼╥╬┴╠ ╨╥╧╟╥┴═╙
  1444.  
  1445. CP [-F] FILE DESTFILE
  1446. CP [-F] FILE ... DIRECTORY
  1447.  
  1448. ┴ FILE COPIER.  ╧PERATES LIKE THE ╒NIX FILE-COPIER PROGRAM.  ╔F YOU GIVE TWO
  1449. FILENAMES, WILL COPY THE FIRST FILE TO THE SECOND NAME.  ╔F A NUMBER OF FILE
  1450. NAMES ARE GIVEN AND THE LAST ARGUMENT IS A DIRECTORY NAME IS GIVEN, WILL
  1451. COPY ALL OF THE FILES, RETAINING THEIR NAMES, INTO THE GIVEN DIRECTORY.
  1452.  
  1453. ╔F A FILE THAT YOU WANT TO COPY TO ALREADY EXISTS, THEN YOU WILL BE PROMPTED
  1454. FOR WHETHER YOU WANT TO OVERWRITE THE FILE: YES, NO, ALL, OR QUIT.
  1455. ┴NSWERING ┘ES WILL OVERWRITE THE FILE, AND CONTINUE ONTO THE NEXT FILE.
  1456. ┴NSWERING ╬O WILL ABORT COPYING THE CURRENT FILE AND CONTINUE ONTO THE NEXT
  1457. FILE.  ┴NSWERING ┴LL WILL HAVE THE SAME ACTION AS ┘ES, EXCEPT THAT IT WILL
  1458. NEVER ASK YOUR PERMISSION AGAIN; IT WILL ALWAYS ASSUME ┘ES.  ┴NSWERING ╤UIT
  1459. WILL ABORT THE ENTIRE COPY OPERATION WITHOUT DISTURBING ANY MORE FILES.
  1460.  
  1461. ╔F, ON THE OTHER HAND, YOU USE THE "-F" OPTION (FORCE), THEN THE COMMAND
  1462. WILL OVERWRITE EXISTING FILES WITHOUT PESTERING YOU FOR PERMISSION.  ╧R, IF
  1463. THE STDIN FILE STREAM IS NOT CONNECTED TO THE CONSOLE, THEN THE "FORCE"
  1464. OPTION WILL BE PRESUMED.  ╔ WOULD REALLY LIKE TO GET A "-R" (RECURSIVE)
  1465. OPTION WORKING.  ═AYBE IN AN "XCP" VARIANT.
  1466. --------
  1467. RM FILE ...
  1468.  
  1469. ╞ILE REMOVER (SCRATCHER).  ┴LL NAMED FILES WILL BE DELETED.
  1470. --------
  1471. MV OLDFILE1 NEWFILE1 ... OLDFILE╬ NEWFILE╬
  1472.  
  1473. ╞ILE RENAMER.  ╞OR EACH PAIR OF NAMES, THE OLD NAME WILL BE CHANGED TO THE
  1474. NEW NAME.  ╔F THE NEW NAME ALREADY EXISTS, THEN THE PROGRAM WILL REPORT AN
  1475. ERROR.  ╘HIS USES THE CRUFTY ├OMMODORE RENAME ─╧╙ COMMAND, SO DON'T EVEN
  1476. THINK ABOUT RENAMING A FILE THAT IS NOT IN THE CURRENT DIRECTORY OR "MOVING"
  1477. A FILE BETWEEN DIRECTORIES.
  1478. --------
  1479. MKDIR FLAT─IR╬AME
  1480.  
  1481. ├REATE A NEW SUBDIRECTORY IN THE CURRENT DIRECTORY.  ╘HE GIVEN NAME MUST BE
  1482. "FLAT", I.E., IT IS JUST THE NAME LIKE "DIRNAME", WITHOUT ANY "/"S OR ":"S.
  1483. --------
  1484. RMDIR FLAT─IR╬AME
  1485.  
  1486. ╥EMOVE AN EXISTING EMPTY SUBDIRECTORY IN THE CURRENT DIRECTORY.
  1487. --------
  1488. WC FILE ...
  1489.  
  1490. ╫ORD COUNTER.  ├OUNTS THE LINES, WORDS, AND CHARACTERS IN A FILE.  ╘O COUNT
  1491. LINES, THE PROGRAM SIMPLY COUNTS CARRIAGE RETURNS (CODE 13 DECIMAL).  ┴ WORD
  1492. IS ANY NON-WHITESPACE CHARACTER(S) BETWEEN WHITESPACE CHARACTERS.
  1493. ╫HITESPACE IS DEFINED AS THE CHARACTERS ╙╨┴├┼, ╘┴┬, AND ╥┼╘╒╥╬ (CODES 32, 9,
  1494. AND 13 DECIMAL, RESPECTIVELY).  ╔F MULTIPLE FILES ARE SPECIFIED, TOTALS WILL
  1495. BE REPORTED.
  1496. --------
  1497. GREP [-[I][V]] [^]SUBSTR[$] FILE ...
  1498.  
  1499. ╘HE "I" AND "V" FLAGS ARE OPTIONAL.  "I" MEANS TO IGNORE THE CASE OF LETTERS
  1500. IN COMPARISONS AND THE "V" MEANS TO INVERT THE SEARCH - DISPLAY LINES THAT
  1501. DO NOT MATCH THE PATTERN.
  1502.  
  1503. ╘HE SUBSTRING MAY BEGIN WITH "^" WHICH MEANS ONLY TO CHECK FOR THE STRING
  1504. AT THE BEGINNING OF A LINE, AND MAY END WITH "$" WHICH MEANS ONLY TO CHECK
  1505. FOR THE STRING AT THE END OF A LINE.  ┬OTH "^" AND "$" MAY BE USED AT THE
  1506. SAME TIME.  ╘HERE IS NO ESCAPE CHARACTER, SO YOU'LL HAVE PROBLEMS TRYING TO
  1507. SEACH FOR THE TWO ANCHOR CHARACTERS IN THE FILES.
  1508.  
  1509. ╧NE OR MORE FILES MAY BE SPECIFIED TO BE SEARCHED.  ╔F MORE THAN ONE FILE,
  1510. THEN THE NAME OF THE FILE WILL PRECEED EACH LINE PRINTED THAT MATCHES.
  1511. ╧UTPUT GOES TO STDOUT.  ╙OME EXAMPLES FOLLOW:
  1512.  
  1513. GREP HELLO HELLO_WORLD.C
  1514. GREP -V '^$' FILE1 >FILE1.NOBLANK
  1515. GREP -I CR┴I╟ ╚ACK*
  1516. GREP -IV 'THE$' FILE2
  1517.  
  1518. ╘HE FIRST EXAMPLE SIMPLY SEARCHES FOR THE STRING "HELLO".  ╘HE SECOND EXAMPLE
  1519. REMOVES ALL BLANK LINES FROM THE INPUT FILE.  ╘HE THIRD EXAMPLE SEARCHES THE
  1520. ╚ACK1, ╚ACK2, ╚ACK3, ╚ACK4, AND ╚ACK5 FILES (FOR EXAMPLE) FOR THE WORD "CRAIG"
  1521. WHICH CAN BE IN ANY CASE (EG. "├RAIG" WOULD MATCH).  ╘HE FOURTH EXAMPLE
  1522. DISPLAYS ALL LINES THAT DO NOT END WITH THE WORD "THE" IN ANY CASE (EG. THE
  1523. SECOND LINE OF THIS PARAGRAPH WOULD BE OMITTED).
  1524.  
  1525. ╙OME LIMITATIONS OF THE PROGRAM ARE: ONLY THE FIRST 2048 CHARACTERS OF A
  1526. (REALLY LONG) LINE WILL BE CONSIDERED, LINES MAY NOT CONTAIN THE CHARACTER
  1527. CODE $00, AND THE LAST LINE OF THE FILE MUST END WITH A ╥┼╘╒╥╬ (OR IT WILL BE
  1528. IGNORED).
  1529. --------
  1530. TR [-I] [-FROMSET2TOSET] FILE ...
  1531.  
  1532. ╘RANSLATE FILES FROM ONE CHARACTER SET TO ANOTHER.  ├HARACTER SETS SUPPORTED
  1533. ARE: ╨ETSCII, ┴SCII-├R╠F (═╙-─╧╙), ┴SCII-╠F (╒NIX), ┴SCII-├R, AND
  1534. ╙PEED╙CRIPT.  "FROMSET" AND "TOSET" IN THE SYNOPSIS ABOVE MAY BE ANY OF: "P"
  1535. (╨ETSCII), "A" (┴SCII-├R╠F), "AL" (┴SCII-╠F), "AC" (┴SCII-├R), "S"
  1536. (╙PEED╙CRIPT), "C" (├OMMODORE == ╨ETSCII), "U" (╒NIX == ┴SCII-╠F), OR "M"
  1537. (═╙-─╧╙ == ┴SCII-├R╠F).
  1538.  
  1539. ╘HE THE CHARACTER SET SPECIFIERS ARE SEPARATED BY THE CHARACTER "2" (MEANING
  1540. "TRANSLATE TO").  ╔F THE TRANSLATION SPECIFICATION ARGUMENT IS MISSING, THE
  1541. DEFAULT OF TRANSLATING FROM ┴SCII-├R╠F TO ╨ETSCII IS USED.  ╔NPUT IS TAKEN
  1542. FROM THE FILES AND ALL OUTPUT GOES TO STDOUT IN ORDER.
  1543.  
  1544. ┼XAMPLE:
  1545.  
  1546. TR -S2U FILE1 >FILE1.UNIX
  1547.  
  1548. ╘RANSLATE FROM ╙PEED╙CRIPT FORMAT TO ┴SCII-╠F (╒NIX) FORMAT THE CONTENTS OF
  1549. "FILE1" AND PUT INTO FILE "FILE1.UNIX".
  1550.  
  1551. ╘HE NAME "TR" IS USED (A ╒NIX UTILITY) BECAUSE THE FUNCTIONALITY OF THIS
  1552. PROGRAM WILL GROW TO INCLUDE THAT OF THE ╒NIX "TR" UTILITIY.
  1553.  
  1554. ╘HE "-I" OPTION MEANS TO DO AN "IN-PLACE" TRANSLATION.  ╔.E., THE ORIGINAL
  1555. FILE WILL BE OVERWRITTEN WITH THE TRANSLATED DATA.  ╘O ACHIEVE THIS, A
  1556. TEMPORARY FILE IS CREATED IN THE TEMPORARY DIRECTORY THAT IS THE SIZE OF
  1557. THE FINAL FILE, AND THEN REMOVED.  ═AKE SURE THAT YOUR TEMPORARY DIRECTORY
  1558. WILL HAVE ENOUGH SPACE TO DO THE TRANSLATIONS.
  1559. --------
  1560. SORT [-[I][V]] [+COLUMN] FILE ...
  1561.  
  1562. ╙ORT UTILITY.  ├URRENTLY USES A SUCKED-OUT INSERTION SORT ALGORITHM.  ╫ILL
  1563. BE EXTENDED TO USE THE "┴PPROXIMATION ╙ORT" ALGORITHM, WHICH HAS BETWEEN
  1564. ╧(╬) AND ╧(╬^2) PERFORMANCE (CLOSE TO ╧(╬) FOR RANDOM DATA).  ═AKES USE OF
  1565. DYNAMICALLY ALLOCATED MEMORY TO STORE LARGE FILES INTERNALLY.
  1566.  
  1567. ╘HE "I" AND "V" FLAGS ARE OPTIONAL.  "I" MEANS TO IGNORE CASE OF LETTER
  1568. CHARACTERS IN COMPARISONS TO DETERMINE ORDER.  ╘HE "V" FLAG MEANS TO INVERSE
  1569. THE ORDER OF SORTING (PUT INTO DESCENDING ORDER RATHER THEN THE USUAL
  1570. ASCENDING ORDER).  ╘HE +COL FIELD IS OPTIONAL, AND IF PRESENT, GIVES THE
  1571. CHARACTER POSITION OF THE START OF THE SORTING KEY.  ╘HE DEFAULT STARTING
  1572. POSITION IS 1 (THE BEGINNING OF THE LINE).  ┴ ╘┴┬ CHARACTER WILL BE
  1573. INTERPRETED AS ANY OTHER CHARACTER.
  1574.  
  1575. ╔F MULTIPLE FILES ARE SPECIFIED, THEY WILL ALL BE MERGED TOGETHER AND THEN
  1576. SORTED AS A GROUP.  ╙ORTED OUTPUT GOES TO STDOUT.  ╔F THE PROGRAM DIES IN
  1577. THE MIDDLE OF ITS OPERATION (EG. OUT OF MEMORY), ALL FILES OWNED BY THE
  1578. PROGRAM (PROCESS) WILL BE CLOSED AND ALL MEMORY ALLOCATED TO THE PROGRAM
  1579. WILL BE RECLAIMED.  ╘HIS IS ALSO TRUE FOR ALL OTHER EXTERNAL PROGRAMS, SINCE
  1580. THIS IS IMPLEMENTED IN THE KERNEL.
  1581. --------
  1582. WRAP FILE ...
  1583.  
  1584. ╘HIS IS LIKE THE CAT COMMAND, EXCEPT THAT LINES LONGER THAN 75 CHARACTERS
  1585. WILL BE WORD-WRAPPED INTO MULTIPLE LINES.
  1586. --------
  1587. DATE
  1588.  
  1589. ─ISPLAY THE CURRENT DATE.  ╘HE FORMAT IS: "┘┘┘┘/══/──-╚╚:══:╙╙.╘", IN
  1590. 24-HOUR TIME FORMAT.  ╘HIS COMMAND WILL BE EXTENDED TO DISPLAY IN "HUMAN
  1591. MODE" (EG. "╘UE-13-╩UL-1993  05:49:53 PM") AND TO ALLOW YOU TO SET THE
  1592. DATE.  ├URRENTLY, THE DATE WILL ONLY BE SET WHEN THE SYSTEM STARTS UP.
  1593. --------
  1594. FORTY
  1595.  
  1596. ╙WITCH TO THE 40-COLUMN (╓╔├) SCREEN ON THE 128.  ╘HIS ALSO SWITCHES THE
  1597. PROCESSOR INTO SLOW MODE.
  1598. --------
  1599. EIGHTY [ROWS]
  1600.  
  1601. ╙WITCH TO THE 80-COLUMN (╓─├) SCREEN ON THE 128 OR TO THE SOFT-80 SCREEN ON
  1602. THE ├64.  ╧N THE ├128, THIS WILL ALSO SWITCH THE PROCESSOR INTO ╞AST MODE
  1603. AND WILL SET THE ╓─├ SCREEN TO DISPLAY THE NUMBER OF ROWS THAT YOU REQUEST,
  1604. OR THE DEFAULT NUMBER OF ROWS (CONFIG OPTION) IF YOU DON'T SPECIFY A NUMBER
  1605. OF ROWS.
  1606. --------
  1607. READ FILE ...
  1608.  
  1609. ╞ILE READER.  ╒SEFUL ONLY FOR TESTING HOW LONG IT TAKES TO READ A FILE.
  1610. ╬O OUTPUT IS GENERATED.
  1611. --------
  1612. MEM
  1613. MEM ADDRESS
  1614.  
  1615. ─ISPLAY BYTES OF DYNAMICALLY ALLOCATED MEMORY THAT ARE STILL FREE AND THE
  1616. PROCESS ID OF THE "MEM" PROCESS.  ╔F YOU GIVE THE "ADDRESS" OPTION (A 32-BIT
  1617. HEXADECIMAL ADDRESS), THEN THE MEMORY CONTENTS FROM THE GIVEN ADDRESS
  1618. (ALIGNED ON A 16-BYTE BOUNDARY) FOR 256 BYTES ARE DISPLAYED IN AN 80-COLUMN
  1619. FORMAT.  ╒SERS WON'T NORMALLY USE THIS OPTION; IT IS INTENDED FOR
  1620. DEBUGGING.
  1621. --------
  1622. HELLO
  1623.  
  1624. ╘HIS IS JUST A DIPPY LITTLE PROGRAM THAT PRINTS OUT A "HELLO WORLD" MESSAGE.
  1625. ╔T IS INCLUDED SO PROGRAMMERS MAY EXAMINE IT AND ITS SOURCE FILE TO SEE HOW
  1626. SIMPLE ┴├┼ PROGRAMS ARE ORGANIZED.
  1627. --------
  1628. WINDOW [COLUMNS [ROWS [START├OLUMN [START╥OW]]]]
  1629.  
  1630. ╙ETS THE WINDOW SIZE.  ╔F NO ARGUMENTS ARE GIVE, IT WILL REPORT THE CURRENT
  1631. WINDOW DIMENSIONS.  ╔F ONE OR MORE ARGUMENTS ARE GIVEN, THEY WILL BE USED AS
  1632. WINDOW ARGUMENTS AS ABOVE.  ═ISSING ARGUMENTS WILL BE TAKEN FROM THE CURRENT
  1633. WINDOW'S SETTINGS.  ╙CREEN COORDINATES START AT COLUMN 0 OF ROW 0 AND GO TO
  1634. THE FULL SIZE OF THE SCREEN.  ┘OU WILL GET AN ERROR MESSAGE IF YOU TRY TO
  1635. SET UP AN ILLEGALLY SIZED WINDOW AND THE CURRENT WINDOW WILL REMAIN
  1636. UNCHANGED.  ┴FTER SUCCESSFULLY SETTING A WINDOW, IT WILL BE FILLED WITH A
  1637. CHECKERBOARD PATTERN TO INDICATE THE SIZE OF THE WINDOW.  ╩UST CLEAR THE
  1638. SCREEN TO GET RID OF THIS.
  1639. --------
  1640. CHRSET FILE
  1641.  
  1642. ╠OADS THE NAMED FILE FOR USE AS THE CURRENT CHARACTER SET.  ╘HE FILE MUST BE
  1643. A VALID ┴├┼ CHARACTER SET.
  1644. --------
  1645. KEYMAT FILE
  1646.  
  1647. ╠OADS THE NAMED FILE FOR USE AS THE CURRENT KEYBOARD TRANSLATION MATRIX.
  1648. --------
  1649. HEAD [-╬] [FILE ...]
  1650.  
  1651. ╘HIS UTILITY WAS DONATED BY ╩AKE ╚AMBY.  ╚E SAYS:  ╔T PRINTS THE TOP ╬ LINES
  1652. OF ANY FILE (OR ╙╘─╔╬ IF NO FILE IS GIVEN), WHERE ╬ DEFAULTS TO 10.  ╔T
  1653. DETECTS THE ╥╒╬/╙╘╧╨ KEY, AND PRINTS A USAGE MESSAGE IF GIVEN BOGUS
  1654. ARGUMENTS.
  1655. --------
  1656. MORE FILE ...
  1657.  
  1658. ╞ULL-SCREEN FILE VIEWER.  ┴T THE PROMPT, PRESS ╙╨┴├┼ TO VIEW THE NEXT
  1659. SCREENFUL OF A FILE, ╥┼╘╒╥╬ OR CURSOR-─╧╫╬ TO VIEW THE NEXT LINE, ╬ TO GO
  1660. ONTO THE NEXT FILE TO BE VIEWED, OR ╙╘╧╨ OR ╤ TO EXIT THE VIEWER.  ╞UTURE
  1661. EXPANSION POSSIBILITIES INCLUDE A "GO BACK" COMMAND AND AN ┴╙├╔╔-TRANSLATION
  1662. MODE.
  1663. --------
  1664. UUENCODE FILE ...
  1665.  
  1666. ┴ UUENCODER.  ╘HE UUENCODE PROGRAM SENDS ITS OUTPUT TO STDOUT, SO YOU WILL
  1667. USUALLY WANT TO REDIRECT STDOUT TO A DISK FILE.  ╘HIS OUTPUT WILL BE IN
  1668. ╨ETSCII CHARACTERS, TO WORK WITH THE OTHER TEXT UTILITIES.  ╔F YOU WISH TO
  1669. HAVE THE OUTPUT IN ┴SCII, THEN YOU MUST RUN IT THROUGH THE "TR" PROGRAM
  1670. (BELOW).
  1671. --------
  1672. UUDECODE FILE ...
  1673.  
  1674. ┴ UUDECODER.  ╘HE UUDECODE PROGRAM WILL ACCEPT EITHER ╨ETSCII OR ┴SCII FILES
  1675. AND IS ABLE TO EXTRACT MULTIPLE FILES FROM ONE INPUT FILE.  ┼XTRACTED FILES
  1676. ARE PUT INTO ╨╥╟ FILES.
  1677. --------
  1678. BCODE [-HELP] [-V] [-U] [-M] [-L MAX_LINE_COUNT] [FILENAME ...]
  1679.  
  1680. ╙EE THE EXTERNAL DOCUMENTATION FILE "ACE╬╬-BCODE.DOC".
  1681. --------
  1682. UNBCODE [-HELP] [-I] [-V] [-D] [FILENAME ...]
  1683.  
  1684. ╙EE THE EXTERNAL DOCUMENTATION FILE "ACE╬╬-BCODE.DOC".
  1685. --------
  1686. CRC32 FILE ...
  1687.  
  1688. ├╥├32 *┬* GENERATOR.  ╘HE NUMBERS GENERATED BY THIS PROGRAM MATCH ├╥├32
  1689. VALUE GENERATED BY OTHER PROGRAMS, SUCH AS ╨╦┌╔╨ AND ┌═╧─┼═.  ╘HIS PROGRAM
  1690. IS USED TO VERIFY THAT FILES HAVE BEEN TRANSPORTED FROM PLACE TO PLACE
  1691. CORRECTLY.
  1692.  
  1693. ╘HE PROGRAM USES A TABLE-DRIVEN BYTE-ORIENTED ALGORITHM, SO IT EXECUTES
  1694. FASTER THAN THE OLDER (CRC32A) PROGRAM.
  1695. --------
  1696. CRC32A FILE ...
  1697.  
  1698. ├╥├32 *┴* GENERATOR.  ╘HE NUMBERS GENERATED BY THIS PROGRAM ─╧╬'╘ MATCH THE
  1699. ├╥├32 GENERATED BY OTHER PROGRAMS, SUCH AS ╨╦┌╔╨.  ╚OWEVER, IT WILL ALWAYS
  1700. MATCH ITSELF.  ╘HE PROGRAM USES A BRUTE-FORCE BITWISE ALGORITHM, SO IT IS
  1701. RELATIVELY SLOW.  ╘HE PROGRAM IS INCLUDED FOR HYSTERICAL (ER... HISTORICAL)
  1702. REASONS.
  1703. --------
  1704. UNKAR FILE ...
  1705.  
  1706. ╦┴╥ (╦EVIN'S ┴╥CHIVER) DEARCHIVER, INTENDED TO BE USED FOR EXTRACTING THE
  1707. ┴├┼ SOURCE CODE, ALTHOUGH YOU MAY FIND THIS ARCHIVER FORMAT USEFUL FOR YOUR
  1708. OWN PURPOSES.
  1709. --------
  1710. KAR [-HELP] FILE ...
  1711.  
  1712. ╦┴╥ ARCHIVER.  ╘HIS MAY BE USED TO ENCODE ANY TEXT FILES INTO A SINGLE ╦┴╥
  1713. ARCHIVE.  ╧NLY TEXT FILES MAY BE ARCHIVED, AND THE RESULTING ARCHIVE IS
  1714. ALSO A TEXT FILE, SO YOU CAN LOOK AT IT, MAIL IT, ETC.  ┴LL OF THE NAMED
  1715. FILES ARE INCLUDED AND OUTPUT GOES TO STDOUT, WHICH YOU WILL LIKELY WANT
  1716. TO REDIRECT.
  1717. --------
  1718. Z FILE
  1719.  
  1720. ─┼═╧ OF ┌┼─: DISPLAYS THE MAIN SCREEN, READS THE NAMED FILE INTO MEMORY, AND
  1721. PRINTS IT, SOFT-WRAPPED TO THE SCREEN LENGTH, TO STDOUT.  ╘HE NEW ┴├┼-┌ED
  1722. WILL HAVE MORE FUNDAMENTAL FEATURES THAN THE ORIGINAL ┌ED-128 PROGRAM,
  1723. INCLUDING AUTO-WRAP LINES, UNLIMITED LINE LENGTH, HORIZONTAL SCROLLING TO
  1724. 240 CHARACTERS, CHARACTER-ORIENTED COMMANDS RATHER THAN LINE-ORIENTED, AND
  1725. MULTIPLE FILE BUFFERS WITH SPLIT-SCREEN DISPLY.  ╨LUS, IT WILL ALSO WORK ON
  1726. THE 40-COL SCREEN OF THE 128 AND ON THE ├-64.
  1727. --------
  1728. VBM [-HELP] FILE ...
  1729.  
  1730. ╘HIS IS A PORTED VERSION OF A PROGRAM (╓┬═ ┬ITMAP ╓IEWER VERSION 1.10) THAT
  1731. WAS RELEASED EARLIER AS A STAND-ALONE PROGRAM.  ╘HE PORTED VERSION HAS ALL
  1732. THE BENEFITS OF ALL ┴├┼ PROGRAMS: IT WILL RUN ON EITHER THE 128 OR 64 AND
  1733. YOU CAN CONVENIENTLY SPECIFY THE FILES YOU WANT TO USE THE PROGRAM WITH.
  1734. ┘OU WILL WANT TO GET THE IMAGE FILES AND THE ├-LANGUAGE XBM-TO-VBM CONVERTER
  1735. THAT WERE BUNDLED WITH THE ORIGINAL PROGRAM.
  1736.  
  1737. ╘HIS PROGRAM REQUIRED SOME KERNEL IMPROVEMENTS, INCLUDING ADDING BASIC
  1738. SUPPORT FOR 320*200 MONOCHROME GRAPHICS ON THE 64 AND 640*200 AND 640*491
  1739. (╬╘╙├-64╦ ONLY) USING THE ╓─├ DISPLAY OF THE 128.  ╬OTE THAT THE 320*200 AND
  1740. 640*491 DISPLAYS HAVE A PIXEL ASPECT OF 1-TO-1 AND THE 640*200 DISPLAY HAS A
  1741. PIXEL ASPECT RATIO OF 2-TO-1.  ╙INCE IMAGES ARE NORMALLY ENCODED WITH A
  1742. 1-TO-1 ASPECT RATIO, IMAGES WILL LOOK TWICE AS TALL AS THEY SHOULD ON THE
  1743. 640*200 DISPLAY.  ╘HE VBM PROGRAM DOESN'T ATTEMPT TO CORRECT THE ASPECT OF
  1744. IMAGES (YET).
  1745.  
  1746. ╫HEN YOU START THE "VBM" PROGRAM WITH IMAGE FILES SPECIFIED, IT WILL DISPLAY
  1747. THE IMAGE AND THEN WAIT FOR YOU TO PRESS A KEY.  ╨RESSING "╤" WILL EXIT FROM
  1748. THE PROGRAM.  ╨RESSING ANY OF THE CURSOR KEYS WILL SCROLL THE IMAGE A
  1749. QUARTER-SCREEN IN THE DIRECTION YOU PRESS.  ╨RESSING THE ╚╧═┼ KEY WILL
  1750. RETURN YOU TO THE "HOME" POSITION OF THE IMAGE.  ╨RESSING THE ╙╨┴├┼ ┬┴╥ OR
  1751. ╥┼╘╒╥╬ KEY WILL CAUSE THE NEXT IMAGE IN THE "SLIDE SHOW" TO BE VIEWED.
  1752. ┴FTER THE LAST IMAGE, THE VIEWER WILL EXIT.  ╧H, WHILE DISPLAYING THE
  1753. CURRENT IMAGE, THE PROGRAM WILL "PEEK" AT THE KEYBOARD BUFFER AND IF YOU
  1754. HAVE TYPED ANY KEY, IT WILL STOP DISPLAYING THE IMAGE AND INTERPRET THE
  1755. KEY.  ╘HIS WILL ALLOW YOU TO POSITION OR SELECT AN IMAGE QUICKLY.
  1756. ╘HERE ARE OTHER POSITIONING COMMANDS SUMMARIZED AS FOLLOWS:
  1757.  
  1758. ╒╨,─╧╫╬,╠┼╞╘,╥╔╟╚╘: 1/4 PAGE SCROLL
  1759. ╙╚-╥╔╟╚╘,╙╚-╠┼╞╘  : 1/2 PAGE SCROLL LEFT/RIGHT
  1760. ╙╚-╠╔╬┼╞┼┼─,╠╞    : 1/2 PAGE SCROLL UP/DOWN
  1761. ├╘-╠┼╞╘,├╘-╥╔╟╚╘  : FULL PAGE SCROLL LEFT/RIGHT
  1762. ├╘-╒╨,├╘-─╧╫╬     : FULL PAGE SCROLL UP/DOWN
  1763. I,M,J,K: SMALL SCROLL UP,DOWN,LEFT,RIGHT
  1764. 1 TO 9 : SET SMALL-SCROLL JUMP (TIMES 8, IN PIXELS)
  1765. ├╧-╠┼╞╘,├╧-╥╔╟╚╘  : GO TO END LEFT/RIGHT
  1766. ├╧-╒╨,├╧-─╧╫╬     : GO TO END UP/DOWN
  1767. ╚╧═┼   : GO TO TOP LEFT OF IMAGE
  1768. ├╠╥    : GO TO CENTER OF IMAGE
  1769. ╚┼╠╨   : DISPLAY THIS HELP INFORMATION
  1770. (BASIC KEYBOARD HAS EQUIVALENT CURSOR-MOVEMENT KEYS)
  1771.  
  1772. ╨RESSING "?" OR ╚┼╠╨ WILL BRING UP A SCREEN WITH HELP INFORMATION AND THE
  1773. NAME AND NUMBER OF THE FILE BEING VIEWED.  ╨RESSING "0" WILL TAKE YOU TO
  1774. THE FIRST IMAGE GIVEN ON THE COMMAND LINE, AND PRESSING "$" WILL TAKE YOU
  1775. TO THE LAST IMAGE ON THE COMMAND LINE.
  1776.  
  1777. ╘HE ╓┬═ CUSTOM IMAGE FORMAT IS BASICALLY A BINARY REPRESENTATION OF THE ╪┬═
  1778. FORMAT FOR ╪-WINDOWS BITMAPS, WHERE ╪┬═ GIVES ITS DATA IN ├-CODE FORMAT.
  1779. ╘HERE IS NOW A NEWER VERSION OF THE ╓┬═ FORMAT (VERSION #3; THE OLDER ONE
  1780. WAS VERSION #2), AND IT FEATURES ╥╠┼ DATA COMPRESSION, WHICH GIVES ABOUT 29%
  1781. SMALLER FILES ON AVERAGE THAN VERSION #2 DID.  ╘HE VIEWER PROGRAM CAN
  1782. ACCEPT EITHER VERSION #2 OR VERSION #3 IMAGES.
  1783.  
  1784. ╘HE "PBMTOVBM.C" FILE IN THE "ACE╬╬-USRC.KAR" ARCHIVE ├ PROGRAM THAT WILL
  1785. CONVERT A FILE FROM ╪┬═ FORMAT TO ╓┬═ FORMAT.  ╙O, ALL YOU NEED TO VIEW ANY
  1786. ARBITRARY ╟╔╞ OR ╩╨┼╟ FILE ON YOUR 128 IS A PROGRAM LIKE ╒NIX'S "XV" TO
  1787. CONVERT THE IMAGE INTO ".XBM" FORMAT, AND THEN CONVERT THAT INTO ".BM"
  1788. FORMAT.  ╘HE ┴├┼ VIEWER WILL LET YOU SCROLL AROUND IN IMAGES LARGER THAN
  1789. 640X491 (ET AL), SO YOU DON'T HAVE TO CUT THE SIZE OF LARGER IMAGES.  ╘HE
  1790. MAXIMUM IMAGE SIZE THAT "VBM" WILL HANDLE IS 2040X65535.
  1791. --------
  1792. VBMPR [-HELP] FILE
  1793.  
  1794. ╘HIS PROGRAM ONLY ACCEPTS VERSION #2 IMAGES; ╔ WILL EVENTUALLY INTEGRATE
  1795. THIS INTO THE ╓┬═ VIEWER PROGRAM ABOVE.
  1796.  
  1797. ╘HE INDICATED FILE WILL BE PRINTED, AND IF THERE ARE MULTIPLE FILES, THEY
  1798. WILL BE PRINTED ONE DIRECTLY AFTER THE OTHER.  ┴LL IMAGES ARE PRINTED FROM
  1799. THE LEFT MARGIN, AND THE PROGRAM USES THE 640 DOTS-PER-LINE GRAPHIC MODE OF
  1800. THE PRINTER.  ╘HIS WILL PRODUCE AN IMAGE THAT DOES NOT HAVE A PERFECT ASPECT
  1801. RATIO (WHICH WOULD BE 576 DPL), BUT ╔ FIGURED THAT IT WOULD BE MORE
  1802. IMPORTANT TO BE ABLE TO PRINT 640X╬ IMAGES.  ╘HE HEIGHT OF AN IMAGE IS, OF
  1803. COURSE, LIMITED ONLY BY THE AMOUNT OF PAPER THAT YOU HAVE.
  1804.  
  1805. ╫HEN RUN, THE PROGRAM WILL OPEN A CHANNEL TO YOUR PRINTER THROUGH DEVICE
  1806. "Q:" OF YOUR CONFIGURATION.  ╘HIS DEVICE SHOULD BE SET UP AS A
  1807. TRANSPARENT-MODE NON-AUTO-LINEFEED CONNECTION TO YOUR PRINTER/PRINTER
  1808. INTERFACE.
  1809.  
  1810. ╔ TESTED THE SPEED OF THE PROGRAM ON A 640X480 IMAGE, AND IT TOOK TEN
  1811. SECONDS TO INPUT THE IMAGE FROM THE RAMDISK AND OUTPUT THE PRINTER DATA TO
  1812. THE NULL DEVICE, SO THE BOTTLENECK IN THE SYSTEM FOR PRINTING IMAGES WILL
  1813. DEFINITELY BE THE SPEED OF THE CONNECTION TO YOUR PRINTER OR YOUR PRINTER
  1814. ITSELF, AND NOT THIS PRINTING PROGRAM.
  1815. --------
  1816. AS [-HELP] [-S] [-D] [FILE ...]
  1817.  
  1818. ╘HIS PROGRAM IS DESCRIBED IN THE EXTERNAL FILE "ACE╬╬-AS.DOC".
  1819. --------
  1820. TERM
  1821.  
  1822. ╘HIS PROGRAM IS DESCRIBED IN THE EXTERNAL FILE "ACE╬╬-TERM.DOC".
  1823. --------
  1824. FX [-78K] [[-B] FILE ...] [-T FILE ...]
  1825.  
  1826. ╘HIS PROGRAM IS DESCRIBED IN THE EXTERNAL FILE "ACE╬╬-FX.DOC".
  1827. ------------------------------------------------------------------------------
  1828. 7. ╠┴╘┼╥, ─╒─┼
  1829.  
  1830. ╔ CAN SUM UP WHAT THE MAIN FOCUS OF ┴├┼ ╥ELEASE #15 WILL BE IN ONE WORD: ┌┼─.
  1831. ╔ MEAN IT THIS TIME.
  1832.  
  1833. ╘HIS SYSTEM IS ╨UBLIC ─OMAIN ╙OFTWARE.  ╔T IS NOT REQUIRED, BUT IT WOULD BE
  1834. APPRECIATED IF PEOPLE WHO USE THIS SOFTWARE REGULARLY WOULD SEND A POSTCARD
  1835. FEATURING A PICTURE OF SOME LOCAL ATTRACTION/SCENE TO THE FOLLOWING SNAIL-
  1836. MAIL ADDRESS.  ┘OU ONLY HAVE TO DO THIS ONCE.  ┘OU CAN SEND ME MONEY TOO, IF
  1837. YOU WANT, BUT THAT IS STRICTLY OPTIONAL.  ═Y SEMI-PERMANENT ADDRESS IS:
  1838.  
  1839. ├RAIG ┬RUCE
  1840. 4-249 ├EDARBRAE ┴VE.
  1841. ╫ATERLOO, ╧NTARIO
  1842. ├ANADA, ╬2╠ 4╙8
  1843.  
  1844. ╔F YOU HAVE QUESTIONS, COMMENTS, SUGGESTIONS, OR BUG REPORTS, YOU CAN
  1845. CONTACT ME AT THE FOLLOWING E-MAIL ADDRESS.
  1846.  
  1847. ╦EEP ON ╚ACKIN'!
  1848.  
  1849. -├RAIG ┬RUCE
  1850. CSBRUCE@CCNGA.UWATERLOO.CA
  1851. "┴SK NOT WHAT YOUR OPERATING SYSTEM CAN DO FOR YOU;
  1852.  ASK WHAT YOU CAN DO FOR YOUR OPERATING SYSTEM."
  1853. ------------------------------------------------------------------------┼╬─---
  1854.  
  1855.