home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.tar / ftp.whtech.com / club100 / ref / rcmap2.200 < prev    next >
Text File  |  2006-10-19  |  18KB  |  594 lines

  1.                      ---------------------------- 
  2.                      | Model 100/200 System Map | 
  3.                      ---------------------------- 
  4.                             ROM: Part II 
  5.                           Copyright 1985 
  6.                      Revision Date: 09/30/85 
  7.                    Compiled and Researched by: 
  8.                        Robert D. Covington 
  9.             Systems Information Management Consultants 
  10.       [Not associated with The Covington Group, N. Y., N. Y.] 
  11.         Revised for the Tandy 200 by Chris De Herrera, 9/89
  12.  
  13.     This document may be duplicated and distributed free of 
  14. charge to any individuals who desire it.  Any duplications of 
  15. this document, however, must include all of the information 
  16. contained here-in, with no deletions or changes. 
  17.     The author and distributors of this document make no  
  18. expressed or implied warrantees as to the validity of the  
  19. information contained here in. 
  20.  
  21. Hex Address 
  22. M100  M200     Description
  23. ----------------------------------------------------------------------
  24. 0D71H 0DC9H -  ?
  25.  
  26. 0DABH       -  Main Evaluation Routine.  This routine handles all  
  27.                evaluations of math operations and functions. 
  28.                Entry: 
  29.                   HL - Points to text to evaluate plus 1.  This routine  
  30.                        assumes that an RST 10H was executed prior to  
  31.                        entering the routine.  To adjust for this, either  
  32.                        execute a RST 10H or INC HL prior to entering the  
  33.                        routine. 
  34.               Exit: 
  35.                   HL - Incremented past evaluated expression 
  36.                   FAC1 - Usually contains the result of the evaluated  
  37.                          expression. 
  38.  
  39. 0F0DH       -  Integer Divide (FAC1=DE/HL) 
  40.  
  41. 0F1CH       -  Evaluate the function in the buffer pointed to by HL. 
  42.                Entry: 
  43.                   HL - Points to the buffer containing the compressed  
  44.                        function and parameters. 
  45.                Exit: 
  46.                   FAC1 - Usually contains the result of the function. 
  47.  
  48. 0F47H       -  ERR Function 
  49.  
  50. 0F56H       -  ERL Function 
  51.  
  52. 0F7EH       -  VARPTR Function 
  53.  
  54. 0F86H       -  VARPTR(#buffer) Function 
  55.  
  56. 0F92H       -  VARPTR(variable) Function 
  57.  
  58. 0FDAH       -  Variable evaluation routine 
  59.  
  60. 0FE8H 1013H -  Get the character pointed to by HL, convert it to upper case  
  61.                if needed, and place it in the A register. 
  62.                Entry: 
  63.                   HL - Points to buffer 
  64.                Exit: 
  65.                   A - Next character in buffer 
  66.  
  67. 0FE9H 1014H -  Convert the character in the A register to uppercase if  
  68.                necessary. 
  69.                Entry: 
  70.                   A - Character 
  71.                Exit: 
  72.                   A - Character converted to UC 
  73.  
  74. 1045H 106FH -  DCXH
  75.  
  76. 1054H       -  NOT Function 
  77.  
  78. 1069H       -  RST 28H routine (see 28H). 
  79.  
  80. 108CH       -  OR Function 
  81.  
  82. 1097H       -  AND Function 
  83.  
  84. 10A2H       -  XOR Function 
  85.  
  86. 10ADH       -  EQV Function 
  87.  
  88. 10B5H       -  IMP Function 
  89.  
  90. 10C8H       -  LPOS Function 
  91.  
  92. 10CEH       -  POS Function 
  93.  
  94. 10D1H       -  Load the integer in the A register into FAC1. 
  95.                Entry: 
  96.                   A - Integer from 0-255 to put in FAC1 
  97.                Exit: 
  98.                   A - Destroyed 
  99.  
  100. 10E6H       -  Check for a running program.  If a program is not running,  
  101.                generate an Illegal Direct (ID) error. 
  102.                Exit: 
  103.                   A - Destroyed 
  104.                   Z flag - Reset if program is running 
  105.  
  106. 10EFH 1119H -  Generate ID error 
  107.  
  108. 1100H       -  INP Function 
  109.  
  110. 110CH       -  OUT Statement 
  111.  
  112. 1112H       -  Evaluate the expression in the buffer pointed to by HL  
  113.                leaving the result in DE.  If the result is greater than  
  114.                32767, an overflow error is generated. 
  115.                Entry: 
  116.                   HL - Points to buffer of expression to evaluate.  The  
  117.                        buffer must end with a null or colon. 
  118.                Exit: 
  119.                   DE - Result of expression 
  120.                   HL - Incremented past expression in buffer 
  121.                   A - Destroyed 
  122.                   Z flag - Set if the evaluated expression is an 8 bit  
  123.                            number.  If so, the result of the operation will  
  124.                            be just in the E register. 
  125.  
  126. 1113H       -  Same as 1112H except that the evalutation starts at HL-1. 
  127.  
  128. 112DH       -  Evaluate the expression in the buffer pointed to by HL  
  129.                leaving the result in the A register.  If the result is  
  130.                greater than 255, a function error is generated.  If the  
  131.                result is greater than 32767, an overflow error is generated. 
  132.                Entry: 
  133.                   HL - Points to buffer to be evaluated.  The buffer  
  134.                        must end with a null or colon. 
  135.                Exit: 
  136.                   HL - Incremented past expression in buffer 
  137.                   A & E - Evaluated expression 
  138.                   D - Destroyed 
  139.  
  140. 112EH 1158H -  Same as 112DH except that evaluation starts at HL-1. 
  141.  
  142. 113BH       -  LLIST Statement 
  143.  
  144. 1140H       -  LIST Statement 
  145.  
  146. 11A2H 11CCH -  Send the buffer pointed to by HL to the screen.  Text must  
  147.                end with a null. 
  148.                Entry: 
  149.                   HL - Points to print buffer 
  150.                Exit: 
  151.                   HL - Points to ending null 
  152.                   A = 0 
  153.   
  154. 1284H       -  PEEK Function 
  155.  
  156. 128BH       -  POKE Function 
  157.  
  158. 1297H       -  Evaluate the expression in the buffer pointed to by HL  
  159.                leaving the result in DE.  This routine differs from 1112H in  
  160.                that it will properly evaluate numbers up to 65535.  If the  
  161.                result of the operation is greater than 65535, an overflow  
  162.                error will occur. 
  163.                Entry: 
  164.                   HL - Points to buffer to evaluate.  The buffer must  
  165.                        end with a null or colon. 
  166.                Exit: 
  167.                   DE - Evaluated expression 
  168.                   HL - Incremented past expression in buffer. 
  169.  
  170. 12CBH 12F7H -  Wait for a key from the keyboard.  All function keys are  
  171.                converted into their pre-programmed text. 
  172.                Exit: 
  173.                  A - Character entered 
  174.                  C flag - Set if special character 
  175.  
  176. 12DBH 1404H -  ?
  177.  
  178. 13A5H       -  Toggle function key label line if enabled. 
  179.                Exit: 
  180.                  A - Destroyed 
  181.  
  182. 13B5H 13DEH -  ?
  183.  
  184. 13DBH 1422H -  Check keyboard queue for pending characters 
  185.                Exit: 
  186.                   A - Destroyed 
  187.                   Z flag - Set if no characters pending 
  188.  
  189. 1419H       -  POWER Statement 
  190.  
  191. 1431H 1549H -  Normal TRAP (low power) interrupt routine 
  192.  
  193. 143FH       -  Turn off computer 
  194.  
  195. 1459H       -  POWER CONT Statement 
  196.  
  197. 1461H       -  POWER ON Statement 
  198.  
  199. 1470H 1590H -  Output character to printer without tab expansions 
  200.                Entry: 
  201.                   A - Character to print 
  202.  
  203. 148AH       -  Start tape and load tape header.  If an error or Shift Break  
  204.                is pressed, generate an I/O error. 
  205.  
  206. 1494H 15ACH -  Generate I/O error 
  207.  
  208. 14A8H 15C0H -  Turn cassette motor on 
  209.  
  210. 14AAH 15C2H -  Turn cassette motor off 
  211.  
  212. 14B0H 15C8H -  Read a byte from tape and update checksum 
  213.                Entry: 
  214.                   C - Current checksum 
  215.                Exit: 
  216.                   A - Character read off tape 
  217.                   C - Updated checksum 
  218.  
  219. 14C1H 15D9H -  Write a byte to tape and update checksum 
  220.                Entry: 
  221.                   A - Character to write to tape 
  222.                   C - Current checksum 
  223.                Exit: 
  224.                   C - Updated checksum 
  225.  
  226. 14D2H       -  LCD Device control block 
  227.  
  228. 14D8H       -  LCD and LPT file open routine 
  229.  
  230. 14DEH 15F5H -  ?
  231.  
  232. 14E5H       -  LCD file output routine 
  233.  
  234. 14EAH 1601H -  ?
  235.    
  236. 14EDH       -  Pop all registers off stack in the order AF, BC, DE, and HL.   
  237.                This routine is only useful if jumped to.  If a call is done,  
  238.                stack integrity is lost. 
  239.  
  240. 14F2H       -  CRT device control block 
  241.  
  242. 14FCH       -  RAM device control block 
  243.  
  244. 1506H       -  RAM file open routine 
  245.  
  246. 158DH       -  RAM file close routine 
  247.  
  248. 15ACH       -  RAM file output routine 
  249.  
  250. 15C4H       -  RAM file input routine 
  251.  
  252. 161BH       -  Special RAM file I/O 
  253.  
  254. 167FH       -  CAS device control block 
  255.  
  256. 1689H       -  CAS file open routine 
  257.  
  258. 16ADH       -  CAS file close routine 
  259.  
  260. 16C7H       -  CAS file output routine 
  261.  
  262. 16D2H       -  CAS file input routine 
  263.  
  264. 1754H       -  LPT device control block 
  265.  
  266. 175AH       -  LPT file output routine 
  267.  
  268. 1762H       -  COM device control block 
  269.  
  270. 176CH       -  MDM file open routine 
  271.  
  272. 176DH       -  COM file open routine 
  273.  
  274. 179EH       -  COM file close routine 
  275.  
  276. 17A8H       -  COM and MDM file output routine 
  277.  
  278. 17B0H       -  COM and MDM file input routine 
  279.  
  280. 17CAH       -  Special COM and MDM I/O routine 
  281.  
  282. 17D1H       -  MDM device control block 
  283.  
  284. 17D8H       -  MDM file close routine 
  285.  
  286. 17E6H 191DH -  Set RS232 parameters to string pointed to by HL.  String must  
  287.                be in the same format as used by TELCOM. 
  288.                Entry: 
  289.                   HL - Points to parameter string 
  290.                   D - 2 if Modem is used 
  291.                   C flag - Set if RS232, reset of Modem 
  292.  
  293. 1804H 1808H -  ?
  294.  
  295. 1877H       -  WAND device control block 
  296.  
  297. 1889H       -  EOF Function 
  298.  
  299. 1904H       -  TIME$ Function 
  300.  
  301. 190FH 1A7EH -  Read time from system clock and store it in the buffer  
  302.                pointed to by HL 
  303.                Entry: 
  304.                   HL - Points to start of time buffer.  The buffer will  
  305.                        be filled with the time in the format hh:mm:ss. 
  306.                Exit: 
  307.                   HL - Incremented to the end of the buffer. 
  308.                   All other registers destroyed 
  309.  
  310. 1924H       -  DATE$ function 
  311.  
  312. 192FH 1A9EH -  Read date and store it in the buffer pointed to by HL. 
  313.                Entry: 
  314.                   HL - Points to start of date buffer.  The buffer will  
  315.                        be filled with the date in the format mm/dd/yy. 
  316.                Exit: 
  317.                   HL - Incremented to the end of the buffer 
  318.                   All other registers destroyed 
  319.  
  320. 1955H       -  DAY$ function 
  321.  
  322. 1962H 1AC5H -  Read day and store it in the buffer pointed to by HL. 
  323.                Entry: 
  324.                   HL - Points to start of day buffer.  The buffer will  
  325.                        be filled with the current 3 letter day  
  326.                        abbreviation. 
  327.                Exit: 
  328.                   HL - Incremented to the end of the buffer 
  329.                   All other registers destroyed. 
  330.  
  331. 199EH 1B01H -  INXH
  332.  
  333. 19A0H       -  Update the in memory clock values starting at F923H with the  
  334.                time in the internal hardware clock 
  335.  
  336. 19ABH       -  TIME$ Statement 
  337.  
  338. 19B3H       -  Update the internal clock chip with the values in the in  
  339.                memory time table starting at F923H 
  340.  
  341. 19BDH       -  DATE$ Statement 
  342.  
  343. 19F1H       -  DAY$ Statement 
  344.  
  345. 1A78H       -  IPL Statement 
  346.  
  347. 1A96H       -  Erase current IPL program (table) 
  348.                Exit: 
  349.                   A - Destroyed 
  350.  
  351. 1A9EH       -  COM and MDM Statements 
  352.  
  353. 1AB2H       -  KEY() Statement 
  354.  
  355. 1AC3H       -  KEY STOP/ON/OFF Statements 
  356.  
  357. 1B0FH       -  ON TIME$ Statement 
  358.  
  359. 1B32H       -  RST 7.5 interrupt routine (see 3CH). 
  360.  
  361. 1B35H 1CB9H -  ?
  362.  
  363. 1B44H 1CC8H -  ?
  364.  
  365. N/A   204FH -  BELL
  366.  
  367. N/A   2B2CH -  KILL
  368.  
  369. 1BB1H 2697H -  ?
  370.  
  371. 1BB8H       -  KEY Statement 
  372.  
  373. 1BBDH       -  KEY LIST Statement 
  374.  
  375. 1BBEH 26A4H -  ?
  376.  
  377. 1BE0H 26C6H -  Send B number of characters from the buffer pointed to by HL  
  378.                to the screen.  Any control characters (0-31 and 127) are  
  379.                converted to spaces for printing. 
  380.                Entry: 
  381.                   HL - Points to buffer to print 
  382.                   B - Number of characters to print 
  383.                Exit: 
  384.                   A - Destroyed 
  385.                   HL - Incremented past last byte printed. 
  386.  
  387. 1C57H       -  PSET Statement 
  388.  
  389. 1C66H       -  PRESET Statement 
  390.  
  391. 1C6DH       -  LINE (graphic) Statement 
  392.  
  393. 1D90H       -  CSRLIN Function 
  394.  
  395. 1D9BH       -  MAX Function 
  396.  
  397. 1DA7H       -  MAXRAM Function 
  398.  
  399. 1DB2H       -  MAXFILES Functions 
  400.  
  401. 1DB9H       -  HIMEM Function 
  402.  
  403. 1DC3H       -  WIDTH Statement 
  404.  
  405. 1DC5H       -  SOUND Statement 
  406.  
  407. 1DE5H       -  SOUND OFF Statement 
  408.  
  409. 1DE6H       -  SOUNF ON Statement 
  410.  
  411. 1DECH       -  MOTOR Statement 
  412.  
  413. 1DF1H       -  MOTOR ON Statement 
  414.  
  415. 1DF5H       -  MOTOR OFF Statement 
  416.  
  417. 1DFAH       -  CALL Statement 
  418.  
  419. 1E22H       -  SCREEN Statement 
  420.  
  421. 1E5EH 2946H -  LCOPY Statement.  This routine will print the textual  
  422.                contents of the screen on the printer.. 
  423.                Exit: 
  424.                   HL, DE, and AF are destroyed. 
  425.  
  426. 1F1BH 2A0BH -  SAVEBA
  427.  
  428. 1F3AH 2A2AH -  FILES Statement 
  429.  
  430. 1F42H       -  Display Catalog 
  431.                Exit: 
  432.                   All registers are destroyed 
  433.  
  434. 1F91H       -  KILL Statement 
  435.  
  436. 1FBEH 2AB5H -  Kill a text file 
  437.                Entry: 
  438.                   HL - Address of directory entry 
  439.                   DE - Start address of file 
  440.  
  441. 1FBFH 2AB5H -  ?
  442.  
  443. 1FD9H 2ACEH -  ?
  444.  
  445. 2017H 2B0CH -  ?
  446.  
  447. 2037H       -  NAME Statement 
  448.  
  449. 2089H 2BA6H -  FINDCO
  450.  
  451. 208FH 2BACH -  ?
  452.  
  453. 20A0H 2BBDH -  FINDDO
  454.  
  455. 20A9H 2BC4H -  ?
  456.  
  457. 20AFH 2BCCH -  FINDFL - FIND ALL TYPES OF FILES, WITH EXTENSIONS
  458.  
  459. 20CCH 2BE9H -  ?
  460.  
  461. 20D5H 2BF2H -  NXTDIR
  462.  
  463. 20E4H 2C09H -  ?
  464.  
  465. 20FEH       -  NEW Statement 
  466.  
  467. 20FFH 2C1CH -  ?
  468.  
  469. 2134H 2C50H -  ?
  470.  
  471. 2146H 2C62H -  RESFPT
  472.  
  473. 21FAH 2D43H -  Count the number of characters in the buffer pointed to by  
  474.                HL. Buffer ends with a null 
  475.                Entry: 
  476.                   HL - Points to the buffer to count 
  477.                Exit: 
  478.                   E - Number of characters in the buffer pointed to by  
  479.                       HL 
  480.                   A - Destroyed 
  481.  
  482. 2206H 2D73H -  OPENDO
  483.  
  484. 220FH 2D7CH -  Open a text file 
  485.                Entry: 
  486.                  (M100=FC93H, M200=F746H) - Filename (8 bytes).
  487.                  DO not required 
  488.                Exit: 
  489.                  HL - Points to start of text file 
  490.                  DE - Points to directory entry 
  491.                  C flag - Set if file already exist, reset if it is a new  
  492.                           file. 
  493.  
  494. 2239H 2DACH -  ?
  495.  
  496. 224CH 2DBFH -  SWAPNM
  497.  
  498. 2280H       -  CSAVE Statement 
  499.  
  500. 22B9H       -  Save the buffer pointed to by HL to tape.  After execution of  
  501.                this routine, return resumes at BASIC ready. 
  502.                Entry: 
  503.                   HL - Start of buffer to save 
  504.                   DE - Number of characters to save 
  505.                Exit: 
  506.                   All registers destroyed 
  507.  
  508. 22CCH       -  SAVEM Statement 
  509.  
  510. 22DDH       -  CSAVEM Statement 
  511.  
  512. N/A   3066H -  SAVE CO FILE
  513.  
  514. 2346H 30B3H -  ?
  515.  
  516. 2377H       -  CLOAD Statement 
  517.  
  518. 23F5H 3165H -  ?
  519.  
  520. 2413H       -  Load a record from the cassette and put it in the buffer  
  521.                pointed to by HL. 
  522.                Entry: 
  523.                   HL - Points to start of receiving buffer 
  524.                   DE - Number of bytes to load. 
  525.                Exit: 
  526.                   All registers destroyed 
  527.  
  528. 2491H       -  LOADM and RUNM Statement 
  529.  
  530. 24A7H       -  CLOADM Statement 
  531.  
  532. 251AH 328AH -  ?
  533.  
  534. 253DH 32A2H -  ?
  535.  
  536. 2542H 32A7H -  Move memory pointed to by HL to the memory pointed to by DE  
  537.                for B number of bytes.  HL and DE are incremented on each  
  538.                cycle of the move. 
  539.                Entry: 
  540.                   HL - Points to the start of the source memory 
  541.                   DE - Points to the start of the destination memory 
  542.                   B - Number of bytes to move 
  543.                Exit: 
  544.                   HL & DE - Incremented past last byte moved 
  545.                   A - Destroyed 
  546.  
  547. 256DH 32D2H -  ?
  548.  
  549. 25A4H 3309H -  ?
  550.  
  551. 25ABH 3310H -  PRPARM
  552.  
  553. 25D5H 333AH -  ?
  554.  
  555. 25DBH 3340H -  ?
  556.  
  557. 25E1H 3346H -  ?
  558.  
  559. 260BH       -  CAS open for output for BASIC files 
  560.  
  561. 260EH       -  CAS open for output for TEXT files 
  562.  
  563. 2611H       -  CAS open for output for Command files 
  564.  
  565. 2650H       -  CAS open for input for BASIC files 
  566.  
  567. 2653H       -  CAS open for input for text files 
  568.  
  569. 2656H       -  CAS open for input for Command files 
  570.  
  571. 2700H 3464H -  ?
  572.  
  573. 2705H 346BH -  ?
  574.  
  575. 273AH       -  STR$ Function 
  576.  
  577. 27B1H 3517H -  Print buffer pointed to by HL until a null (00H) or '"' is  
  578.                found.  Print begins at current cursor position. 
  579.                Entry: 
  580.                   HL - Points to buffer to be printed 
  581.  
  582. 290FH       -  Move the memory pointed to by BC to the memory pointed to by  
  583.                DE  L times.  BC and DE are incremented on each cycle of the  
  584.                move. 
  585.                Entry: 
  586.                   BC - Points to the start of the source memory 
  587.                   DE - Points to the start of the destination memory 
  588.                   L - Number of bytes to move 
  589.                Exit: 
  590.                   HL & DE - Incremented past last byte moved 
  591.                   A - Destroyed 
  592.  
  593. <EOF>
  594.