home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.tar / ftp.whtech.com / club100 / pg / pgxos / x-tutr.do < prev    next >
Text File  |  2006-10-19  |  13KB  |  258 lines

  1.     X-TUTOR
  2.     -------
  3.  
  4.     This is a file devoted to some of the more "philosophical" aspects of 
  5. programming in the new T200 operational environment created by Paul Globman's 
  6. innovative XOS-C.200.  Paul has literally changed the way we think and use 
  7. these venerable machines and has brought us a giant step closer to "seamless" 
  8. multi-bank operation.
  9.  
  10.  
  11.     XOS-C offers the user two distinct levels of operation.  
  12.  
  13.         The "non-programmer" can put the program to use IMMEDIATELY by 
  14. following the simple procedures clearly stated in XOS-C.DOC.  It is a complete,
  15. user friendly, easy to use program which will quickly become as much a part of 
  16. the day-to-day use of your T200 as any of the other "built-in" features.  Paul 
  17. designed XOS-C to work together with the other routines of your computer while 
  18. adding those that the factory "should" have included.
  19.  
  20.         The "programmer" user will find that XOS-C, in combination with
  21. XBASIC.CO, offers for the first time true cross-bank programming opportunities 
  22. in an easy to use, "friendly" operating system.  There is literally NO 
  23. programming operation that cannot be done to/with a file in AWAY banks as was 
  24. previously available only to files in the HOME bank.  The programmer has ALL 
  25. three banks at his disposal for OPENing, APPENDing, WRITEing, READing, 
  26. CLOSEing, KILLing, RUNing, RUNMing, LOADing and LOADMing.    Additionally, 
  27. CHAINing of programs to automatically jump from bank to bank to process data is
  28. easy and offers limitless opportunities for the creative programmer.
  29.  
  30.  
  31.     This file will offer additional insights on XOS-C use to both types of 
  32. user.  It has been conceived as a dynamic document which will be updated from 
  33. time to time as new and innovative applications of XOS-C are discovered.
  34.     Any "User Guide" to an operational system as unique as XOS-C would not 
  35. be complete without an initial discussion by the author of his program's 
  36. operational "philosophy".  Here is Paul Globman's discussion.
  37.  
  38.  
  39.     ------
  40.  
  41.     THE XOS-C PHILOSOPHY 
  42.  
  43.  
  44.     For years I've been hearing Tandy T200 users lamenting the fact that 
  45. the 72K of RAM was unconnected, and I was one of them.   Tandy felt the limited
  46.   storage in each bank was overcome by the ability to COPY and KILL files.   
  47. "Move them around as needed" was the approach you HAD to take, but not any 
  48. more!
  49.     I wrote XOS-C with the following conventions in mind, and you may 
  50. discover the hidden powers of XOS-C by adapting to these conventions.
  51.  
  52.     BANK #3 CONVENTION (RAMDISK)
  53.  
  54.     Bank #3 should be used for PROGRAM files (BA and CO) and TEXT files 
  55. only if they are accessed for reading by a program in another bank.  In bank 
  56. #3, HIMEM should be set to MAXRAM and MAXFILES=0 for additional storage space.    
  57. Fill bank #3 with pertinent programs often used: Less often used programs if 
  58. space permits.  You should only go to bank #3 to kill or modify a program, 
  59. never to run one.  ALL PROGRAMS ARE RUN FROM Bank #1.
  60.  
  61.  
  62.     BANK #1 CONVENTION (HOME BANK)
  63.  
  64.     Bank #1 should be used as the active bank.   Run all programs in Bank 
  65. #1.   Do  all TEXT processing in Bank #1.   Bring needed programs in from other
  66. banks with the Cmd> function or XBAS-2 and run them here.  Bank #1 is the "work
  67. bank".   Move files not relevant to the current project to bank #2/3.   Keep 
  68. Bank #1 as empty as possible.  Bank #1 is the development Bank.   Keep 
  69. XOSLDR.CO and XOSDAT.CO in Bank #3 to install XOS in case of a cold start.   A 
  70. cold start when in bank #1 will leave  Bank #2/3 unharmed, so backup work files
  71. to bank 2 before running untested code.
  72.     After a cold start, run XOSLDR in Bank #3 and restore bank #1 by 
  73. copying backed up files to Bank #1.   
  74.  
  75.  
  76.     BANK #2 CONVENTION (ALL PURPOSE BANK)
  77.  
  78.     Bank #2 is where you store programs if Bank #3 overflows.  Bank #2 is 
  79. where you would open DATA files when single bank operation is too memory 
  80. restrictive.  Bank #2 is where you "save" backup copies of a current project 
  81. while making experimental changes.  Bank #2 is your secondary "execution" bank 
  82. when more than one "environment" is  needed.
  83.      For example, suppose you have a resident DOS active in bank #1 and  
  84. another HIMEM program you wish to run.  Use Bank #2.
  85.  
  86.     THESE ARE JUST SUGGESTIONS and need not be strictly adhered to but do 
  87. demonstrate a different "functional" approach to T200 use that was not 
  88. previously available.
  89.  
  90.  
  91.     "BASIC" PROGRAMMING CONVENTIONS
  92.  
  93.     Since all BASIC programs that are called in from another bank run in 
  94. the unsaved program buffer, as one program runs another, RAM is automatically 
  95. reallocated.   Large BASIC programs can be run in sections leaving room for 
  96. bigger DATA files.   BASIC programs can be made to delete themselves upon exit,
  97. returning its space to the system.
  98.  
  99.     Just exit the program like this
  100.  
  101.     1000 IPL"":CLEAR10,MAXRAM:MAXFILES=0
  102.     1001 M$="MENU"+CHR$(13):AD=64798
  103.     1002 POKE AD,5:FORI=1TO5
  104.     1003 M=ASC(MID$(M$,I,1)):POKE AD+2*I,0
  105.     1004 POKEAD+2*I-1,M:NEXT:NEW
  106.  
  107.     ...  or keep this program in bank #3 as CLR.BA and run it using F3(Cmd)
  108. whenever you want to maximize space in bank #1.
  109.     As for DOS/.COfile/ROM conflicts that could possibly arise, it is 
  110. possible to store the DOS in Bank #3 as an object file, and have a BASIC 
  111. program (also stored in bank #3) that loads DOS into place and installs it.   
  112. Now you can keep bank #1 without DOS and safe to create other environments.
  113.     Whenever you need DOS, its loader will correct the environment (HIMEM, 
  114. MAXRAM,  Hooks, etc.).   The above CLR.BA can be made to uninstall DOS so other
  115. environments can be created.
  116.  
  117.     -------
  118.  
  119.     (Paul continues with a discussion of the CMD> abilities of F3, probably
  120. the most useful function key on the XOS-C menu!)
  121.  
  122.     FUNCTION KEY 3
  123.  
  124.     I've decided that further discussion is required to point out the 
  125. various features of the Cmd> function key.  I think the best way to begin is by
  126. regarding the Cmd> function as having two distinct MODES of operation.   The 
  127. mode of operation is set at the Menu with the CAPS LOCK key.   I'll refer to 
  128. these modes as the DYNAMIC mode and the DEFAULT mode.
  129.     The DYNAMIC mode was the original design for the Cmd> function, and is 
  130. set with CAPS LOCK UP.   When you press F3(Cmd) in the DYNAMIC mode, you will 
  131. be prompted for a command input.   The response you enter will be the name of 
  132. the file you wish to run, and is in the format: Bank#,colon,Filename
  133.     (The prefix "3:" is assumed if "1:" or "2:" is not found, so you must 
  134. not use "3:" as part of your input.)
  135.  
  136.     1:PROGRM
  137.     2:PROGRM
  138.     PROGRM
  139.  
  140.     The .BA or .CO is added automatically and is determined by the position
  141. of the widebar cursor on the menu.   By keeping the cursor over BASIC when 
  142. pressing F3, a .BA will be added to the filename.  If the widebar cursor is 
  143. positioned over ANY filename other than BASIC, a .CO is added.
  144.     You now have the ability to execute any program IN any of your banks, 
  145. FROM any bank.   (If the .CO program being called runs in HIMEM, then HIMEM 
  146. must have been previously set, or the system will beep.)
  147.     If pressing F3(Cmd) results in a beep, or runs a program without ever 
  148. leaving the menu, then some internal memory pointers are altered and they must 
  149. be restored before you can execute any other programs.   You will still be able
  150. to move the cursor at the menu, and you will still be able to use any function 
  151. key, but any attempt to run a MENU program (ie. pressing ENTER) will simply 
  152. AUTOMATICALLY restore all the pointers and return to the menu.
  153.     This would happen if you used F3 to run a program that didn't exist.   
  154. Then if you tried to enter a file or run a program it would seem as if 
  155. something was amiss.   Well it was just the pointers and you're protected from 
  156. doing anything fatal if they are not set correctly.   Once XOS-C gently returns
  157. to the Menu, you can go on to run any 
  158. program you wish.
  159.     As powerful as it may be to have the ability to run any program, some 
  160. users really prefer a dedicated key that requires no typing, but instead just 
  161. knows what to do.  By pressing CAPS LOCK, you put the Cmd> function into the 
  162. DEFAULT mode.   In the DEFAULT mode F3(Cmd) requires no user input.   It will 
  163. automatically look for and run (if found) files named as CMD>.BA or CMD>.CO IN 
  164. BANK THREE, depending upon the location of the widebar cursor: if over BASIC 
  165. then CMD>BA will AUTOMATICALLY run and, if over any other file CMD>.CO will 
  166. run!.
  167.     The NAME command of F6 can become an powerful tool when using F3 in the
  168. "DEFAULT" (CAPS LOCK) mode.  By jumping to Bank 3 and RE-NAMING resident files 
  169. as needed to CMD>.BA/CO (re-name the current CMD> file first to avoid dupes), 
  170. you can quickly and easily change your "profile" for the job at hand.  
  171.     For example: if you're doing a lot of TEXT work you might want to have 
  172. James Yi's TEXT-E stored in bank 3 as CMD>.CO; then by simply pressing CAPS 
  173. LOCK/F3 each time you cursor over a .DO file it will run CMD>.CO (TEXT-E) 
  174. against that file.  When you've finished with the creating your TEXT work you 
  175. might want to run some other .CO utility against the file and this is simply 
  176. done by swapping the file names again to give "one-key" access to a new 
  177. routine.   (Remember, too, that you can always use F3 in the Cmd> mode (CAPS 
  178. LOCK up) and simply type in the program name.)
  179.     So there can be 2 DEFAULT command files, accessible with CAPS LOCK 
  180. depressed that you can also run from the DYNAMIC mode if desired simply by 
  181. typing "CMD>".
  182.     You might even find it more convenient to run at the Menu in the 
  183. DEFAULT mode with only have one CMD> file.   By having both a .BA and .CO file,
  184. it is possible to invoke the wrong one.   So here's a convention that works: If
  185. you use only one CMD> file, then work at the Menu in the DEFAULT mode and have 
  186. a dedicated function key that you can unlock to do other things.  Otherwise 
  187. work at the Menu in the DYNAMIC mode and simply use CAPS LOCK as a "macro" for 
  188. CMD>.xx
  189.  
  190.  
  191.     Installation and Operation
  192.     --------------------------
  193.  
  194.     Occasionally you may have a program installed in a bank that has 
  195. lowered MAXRAM as a way of self-protection.  (You can check this by entering 
  196. BASIC and typing ?MAXRAM and pressing <ENTER>.) If MAXRAM is lower than 61104 
  197. you'll need to "un-install" whatever program is installed BEFORE you run 
  198. XOSLDR.CO.  Install XOS-C with all MAXRAMs equal and HIMEM set to equal MAXRAM 
  199. in each bank.
  200.     Follow the XOS-C.200 instructions and run XOSLDR.CO TWICE each time you
  201. run it.  Then re-load whatever program you had installed.  Once XOS is 
  202. installed the user should follow the "BANK CONVENTIONS".
  203.  
  204.     XOS-C operates in an area of the T200 known as "Lomem": the "bottom" of
  205. user RAM.  There are some other commercial programs available which also want 
  206. to use the same area.  Consult your program's technical manual if you encounter
  207. any conflicts.  You may have to load and unload XOS-C if you want to use both 
  208. programs.
  209.  
  210.     Function Key 8
  211.     --------------
  212.  
  213.     Here's a picture of memory and an explanation of F8 as supplied.   As 
  214. you use F8 you actually swap the corresponding code between banks to permit 
  215. instant access to SIX options from THREE function keys
  216.  
  217.  
  218.     BANK #1    BANK #2    BANK #3
  219.     +------+   +------+   +------+  65535
  220.     |SYSRAM|   |SYSRAM|   |SYSRAM|
  221.     +------+   +------+   +------+  61104 (MAXRAM)
  222.     |USER  |   |      |   |      |
  223.     |RAM   |   | RAM  |   | RAM  |
  224.     |AREA  |   |      |   |      |
  225.     +------+   +------+   +------+  41728 
  226.     | Roms |   | Cmd> |   |      |
  227.     | Pste |   | Name |   |XBAS-2|  XOS-C occupies the "bottom"
  228.     | Prnt |   | File |   |      |   768 bytes in each bank.
  229.     + -  - +   + -  - +   + -  - +
  230.     | XOS  | = | XOS  | = | XOS  |
  231.     +------+   +------+   +------+  40960 (Bottom of user Ram)
  232.     | ROM  |   | ROM  |   | ROM  |
  233.     +------+   +------+   +------+  0
  234.  
  235.     Pressing F8(Menu) causes XOS to swap itself with the next bank that 
  236. does not contain XBAS-2.   The entire block of code, from RAM address 40960 to 
  237. 41728  is exchanged with another XOS module.   A small portion of XOS is 
  238. identical in  each bank so there is no change of operation as the XOS modules 
  239. switch.
  240.     F8 will never bring in the XBAS-2 module but XBAS-2 is made available 
  241. by CALLing 41179 from any bank.  The XOS-C.200 Docs demonstrate how to use this
  242. when programming.
  243.  
  244.  
  245.         =====================
  246.  
  247.     As new uses for XOS-C's operating capabilities are developed please 
  248. bring them to Paul Globman's attention.  His user I.D. is 72227,1661 and you'll
  249. quickly discover that he's VERY interested in helping you make the most of XOS-
  250. C! I'll try and keep this file updated with many of the general usage tips 
  251. received.
  252.  
  253.  
  254. Randy Hess
  255. Omaha, Nebraska
  256. 6/7/89
  257. [73267,552]
  258.