RXB
| | by Rich Gilbertson |
| | This manual is not meant to be a tutorial on Extended Basic or is it to replace the Extended Basic manual. RXB simply extends and adds to existing commands. That means either the Extended Basic version of programs or RXB version of programs will run exactly the same even with hidden loaders or Assembly support. If any bugs ever surface write me and I will send you a repaired copy. |
| | REDO (FCTN 8) has been deleted, so use COPY or MOVE lines instead. Use a text editor to edit or create RXB programs faster see USER. |
| | CALL USER is a Batch Control file system for absolute control of the RXB editor. Program mode can now go to edit mode and back to program mode. CALL FILES(#), SAVE, OLD, MERGE and CONtinue can now be accessed from XB programs. |
| | GENEVE can use the CLEAR (FCTN 4) key now. Break a program! |
| | RXB control commands built-in for AMS cards. 128k to 1Meg. |
| | TI BASIC will run in RXB with no modifications, except it is without Editor Assembler support available. |
| | RXB allows characters 30 to 159 to be redefined just like in TI BASIC. But of course if characters 144 to 159 are being used this nulls out the use of sprites at the same time. Characters 30 and 31 will remain redefined even upon return to command mode. |
| | Autorepeat commands like SPRITE allow several single sprites to be created in one command. The comma after each set of values allows another sprite to be created. But there are many commands in Extended Basic that don't autorepeat, like KEY. This has been fixed in most commands. EXAMPLE: |
| | (normal Extended Basic) |
| | 1 CALL KEY(1,K1,S1) :: CALL KEY(2,K@,S2) |
| | (new RXB) |
| | 2 CALL KEY(1,K1,S1,2,K2,S2) |
| | Compare the two lines above and you will notice just what has been fixed. Here is a list of new autorepeating commands: |
| | CALL COINC |
| | CALL DISTANCE |
| | CALL GCHAR |
| | CALL HCHAR |
| | CALL JOYST |
| | CALL KEY |
| | CALL VCHAR |
| | The SIZE command has been fixed so from program mode CALL SIZE will report stack and memory free. The SIZE command is called from command mode only. Both report as normal Extended Basic does. If CALL INIT or CALL LOAD (Assembly program) has been called or a hidden loader installed a Assembly program, Then SIZE will also report Assembly Language memory free. If a AMS card is installed then SIZE will report AMS number of K and RXB Banks available. |
| | CALL VERSION will report RXB version numbers. Maximum version number will never be reached as it is above 32000. |
| | CALL EAPGM take the string from XBASIC and goes directly to Editor/Assembler "RUN PROGRAM FILE" menu. It then installs the name on the screen and executes the path name and file name or disk designation number and file name. |
| | *NOTE: It also can support names up to 62 characters in length. That means the device name can be up to seven characters maximum. And handle four path names up to ten characters maximum. Also allowing five periods between names. Adding that up equals 61 characters with one character unused. |
| | CALL EALR takes the string from XBASIC and goes directly to Editor/Assembler 'LOAD AND RUN" menu. It then installs the name on the screen and executes the path name and file name or disk designation number and file name. |
| | *NOTE: See note above. |
| | The editor of EXTENDED BASIC has been modified to allow up to 21 lines of code to be written before the text buffer is full. Previously only 6 lines were allowed, the new limit is the Crunch buffer limit instead of just 6 lines. |
| | While in edit mode of editor the CONTROL KEY DOWN ARROW will move the cursor down one line. The CONTROL KEY UP ARROW will move the cursor up one line. The CONTROL KEY LEFT ARROW will move the cursor to the start of the line. The CONTROL KEY RIGHT ARROW will move the cursor to the end of the line. |
| | Due to requests for it I have added a CALL BEEP and CALL HONK. |
| | The 10 command allows direct CRU access and manipulation thus boot tracking of drives (even hard drives) is possible from EXTENDED BASIC programs without assembly needed. |
| | The Interrupt Service Routine (ISR) normally over-rides XB and only Assembly thru a LINK can control it. RXB now has ISR ON and ISR OFF which also saves the ISR for later use. |
| | CALL LOAD upgrade BLOAD (Binary LOAD) loads program image files created with BSAVE (Binary SAVE) which saves the lower 8K area. Replace hidden loaders with BLOAD as one XB program can load many Assembly language support routines quickly. |
| | The KEY subprogram is modified to only respond to a string ignoring any other keys. CALL KEY( "ynYN" ,O ,KV ,ST) will ignore all keys except "ynYN". |
| | CAT in RXB will accept up to 30 characters in a pathname and works from command mode or program mode. Catalog of disks with CALL CAT has been improved to accept either string variables or numeric variables, also numbers or quoted strings. |
| | ACCESS METHOD ^^^^^^^^^^^^^^^^^^^^^^^^CATALOG RESULT |
| | CALL CAT("DSK4.")^^^^^^^^^^^^^^^^^^^^^^^^^DRIVE 4 |
| | CALL CAT("DSK.VOLUMENAME.")^^^^^^^^^^^^DISK VOLUMENAME |
| | CALL CAT(B$)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^DISK name in B$ |
| | CALL CAT("A")^^^^^^^^^^^^^^^^^^^^^^^^^^^^^DRIVE A |
| | CALL CAT(2)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^DRIVE 2 |
| | CALL CAT(N)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^DISK number in N |
| | CALL CAT(65)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ASC II number "A" |
| | CAT can use a single character to denote the drive to catalog or pathname of the disk, or even a number or numeric variable for the disk. CAT assumes 1 to 9 as drives 1 to 9 and if the number is higher then 9 CAT assumes you mean a ASC II value. In other words it kind of figures out what you want. |
| | FILES in RXB has been modified and improved, Resulting in a type of RUN with CALL FILES before running the program. CALL XBPGM("DSK2.LOAD",1) The above line first opens one file buffer, does a NEW, then it does the equivalent to RUN "DSK2.LOAD" but all in one command. |
| | CHARSETALL resets characters like CHARSET but also characters 95 to 127. |
| | CALL CHAR(ALL,"FFFF0000FFFF0081") will redefine all characters from 32 to 127 with the above new definition. |
| | CALL COLOR(ALL,2,15) changes color sets 0 thru 14 to 2 foreground and 15 background. |
| | CALL MOTION(ALL.30,-40) will change the motion of all sprites to the horizontal velocity of 30 and the vertical velocity of -40. |
| | CALL MOTIOM(STOP) will stop all sprites on screen. |
| | CALL MOTION(GO) will start all sprites moving at the last speed they were at before STOP was called. |
| | CALL RMOTION(ALL) will reverse the motion of all sprites. Essentially it negates the numbers. i.e. -40 becomes 40 and 30 become -30. |
| | CALL GMOTION(#1,X,Y) will return into X the row velocity and column velocity into Y variable. |
| | CALL HGET(2,8,9,S$) will return into S$ the 9 characters off screen at row 2 and column 8 (There is also a VGET subprogram). |
| | CALL HPUT(5,7,T$) will put onto screen at row 5 and column 7 the string T$ (There is also a VPUT subprogram). |
| | CALL MOVE(2,768,o,8192) will copy 768 characters from screen to lower 8K. The 2 is the table type number of VDP and RAM. |
| | CALL MOVES(1,8,99,D$) will copy 8 characters from screen location 38 into D$. The 1 is the table type number of VDP to VDP. (Strings are in VDP). |
| | CALL PEEKV(767,B) will peek VDP at screen address 767 and put it in variable B. |
| | CALL PEEKG(1001.N) will peek GROM at address 1001 and put it in variable N. |
| | CALL POKEV(701,161) will put chr 65 plus screen offset 96 on screen. |
| | CALL POKEG(24000,32) Will put 32 at GRAM address 24000. |
| | CALL POKER(7,244,1,240) will put 244 into VDP register 7 and 240 into VDP register 1. (Puts TI into VDP TEXT mode.) |
| | CALL EXECUTE(8) will go to Operating system address 4 and execute a BLWP >0008 (This routine is the XOP interrupt vectory 2). |
| | CALL QUITOFF Will turn off the quit key. |
| | CALL QUITON will turn on the quit key. |
| | CALL PROTECT("DSK1.","JUNK",255) will protect file JUNK in drive 1. |
| | CALL RENAME("DSK1.","JUNK","TRASH:) will rename file JUNK to TRASH in drive 1. |
| | CALL MKDIR("DSK1.","TESTDISK") will name a disk TESTDISK in drive 1. |
| | CALL MKDIR("WDS1.","TESTHARD") will name a directory TESSTHARD in hard drive 1. |
| | CALL RMDIR("WDS1.","TESTHARD") will delete a directory named TESTHARD in hard drive 1. |
| | CALL FCOPY("DSK1.","UTIL1","WDS1.FWB.","UTIL1") will copy file UTIL1 from drive 1 to subdirectory FWB on hard drive 1. |
| | CALL SCSI("SCSI1.",X$) will get a 44 byte string from Scuzzy drive 1. This string will have the hard drive name, type, version, sector size, and number of sectors. Will only work with SCSI card. |
| | We have another article called AMS-RXB. If you would like to see that article :click here. |
| If you would like to go back to the TI 99 4a menu: click here. |
| If you would like to go back to the opening menu: click here. |
| If you care to go to the article menu: click here. |
|
Any Comments, Questions, or Inquiries: E-Mail is- w7wwg@jps.net
|
|---|