| Home CBM ASCII-X BASIC Disk Commands Enter RUN mode Program Format Secret Variables Variable Format Expressions Keywords (divide) (equal) (less) (minus) (more) (multiply) (plus) (power) Abs And Append Asc Atn Auto Backup Bank Begin Bend Bload Boot Box Bsave Bump Catalog Char Chr Circle Close Clr Cmd Collect Collision Color Concat Cont Copy Cos Data Dclear Dclose Dec Def Delete Dim Directory Dispose Dload Do Dopen Draw Ds Ds string Dsave Dverify El Else End Envelope Er Err Exit Exp Fast Fetch Filter Fn For Fre Get Get num Getkey Go Gosub Goto Graphic Gshape Header Help Hex If Input Input num Instr Int Joy Key Left Len Let List Load Locate Log Loop Mid Monitor Movspr New Next Not Off On Open Or Paint Peek Pen Pi Play Pointer Poke Pos Pot Print num Pudef Quit Rclr Rdot Read Record Rem Rename Renumber Restore Resume Return Rgr Right Rlum Rnd Rreg Rspcolor Rsppos Rsprite Run Rwindow Save Scale Scnclr Scratch Sgn Sin Sleep Slow Sound Spc Sprcolor Sprdef Sprite Sprsav Sqr Sshape St Stash Step Stop Str Swap Sys Tab Tan Tempo Then Ti Ti string To Trap Troff Tron Until Using Usr Val Verify Vol Wait While Width Window Xor Syntax Tokens C128 D64plus Disk Escape Codes Hardware PCxface PETSCII Pet2asc Futurama IBM PC-AT Contact Games Glossary Hall of fame Hall of shame Miscellaneous Privacy policy Programming Twisty puzzles |
RREG [ registerA ] [ , [ registerX ] [ , [ registerY ] [ , [ registerP ] ] ] ]
Retrieve CPU registers after the last SYS command/statment.
This statement is interesting because it acts like a function! Every other BASIC function takes a parameter enclosed in parentheses "(" and ")" and returns a single value. With RREG, however, parentheses are forbidden and you may retrieve zero to four values. The value(s) returned depend on the state of CPU after the most recent BOOT or SYS; on power-up, the "results" are defined as zero (i.e., the value(s) you get if no BOOT nor SYS was ever executed.) Together with SYS, this may be used to calculate a value with a machine-language program in memory (either RAM or ROM). In this sense, it is similar to USR. However USR returns a single floating pointing number, while this can only return a byte(s). Although BANK is important for SYS, it is not important for RREG. Attempts to specify a reserved variable name as a parameter will generate SYNTAX ERROR. Trying to use a string variable generates TYPE MISMATCH ERROR. It has no practical use except as a companion to SYS and (rarely) BOOT, which are very machine-specific; so effectively this statement is non-portable. As such, there are no "real" examples. However a few trivial ones are shown to demonstrate syntax. Examples:
|