Wiki

Clone wiki

Super-Mon / SuperMon_command_summary

SUPER-MON COMMAND SUMMARY

          == DUMPING MEMORY ==

#1111           DUMP HEX AND ASCII @ ADR
#               DUMP UP TO 8 ADD'L BYTES
#1111.2222      DUMP RANGE OF ADDRESSES

          == CHANGING MEMORY ==

#1111:22 33...  PUT VALUES IN MEMORY
#:44 55 66...   CONTINUE PUTTING VALUES
#1111:"STRING"  ASCII VALUES ARE NICE
#1111.2222Z     FILL ("ZAP") RANGE W/ 0
#11<2222.3333Z  FILL RANGE WITH A VALUE

          == MOVING, COMPARING ==

#111<222.333M   MOVE (COPY) RANGE OF MEM
                 E.G. 222.333 -> 111.222
                 (HANDLES OVERLAPPING
                  RANGES CORRECTLY)
#111<222.333V   COMPARE TWO MEM RANGES,
                 SHOW BYTES THAT DIFFER

             == SYMBOLS ==

#SYM=1111       SET A SYMBOL
#SYM=0          CLEAR A SYMBOL
#SYM            SHOW VALUE OF SYMBOL
#1111.2222T     SHOW SYMBOLS IN RANGE
#1111.2222!     CLEAR SYMBOLS IN RANGE
#SYM+1111       ADD TO SYMBOL
#SYM-2222       SUBTRACT FROM SYMBOL
#SYM:SYM2 SYM3  SYMBOLS FOR ADDR OR VAL

           == LIST AND RUN ==

#1111L          LIST 22 LINES W/ SYMBOLS
                 AND LINE MARKS (-G..-Z)
#-G .. #-Z      USE LINE MARK FROM PREV
                 LIST FOR ANY ADR OR VAL
                 (HELPS PREVENT TYPOS)
#1111G          RUN PROGRAM
<RESET>         STOP ERRANT PROGRAM
#^E  (CTRL-E)   PRINT 6502 REGISTERS
#:11 22 33      SET REGISTERS AFTER ^E

           == CREATING CODE ==

#1111: OPC 2222 ASSEMBLE INSTRUCTION
                 (NOTE SPACE AFTER ":")
# OPC (SYM),Y   CONTINUE ASSEMBLY
# OPC *+4       * IS CURRENT PROGRAM CTR
# BXX *         SPECIAL: FORWARD BRANCH
# ...
#1111X          FIX PREV FORWARD BRANCH
#X               (SHORT FORM: TO CUR PC)

           == PROGRAM AREA ==

#2000.3FFFP     SET PROGRAM AREA

  NOTE: CODE MANIPULATION COMMANDS
  SCAN THIS AREA (DEFAULT 6000.BFFF)
  TO LOCATE AND/OR ADJUST:

     1. RELATIVE BRANCH REFERENCES
     2. ABSOLUTE CODE REFERENCES
     3. SYMBOL VALUES

         == MANIPULATING CODE ==

#1111I          INSERT ONE ZERO AT ADDR
#1111.1122I     INSERT ZEROS IN RANGE
#1111O          OPEN: INSERT, BUT DON'T
                 MOVE FIRST SYMBOL

#K              DELETE INSTRUCS, PC UP
                 (STOP AT 1ST NON-ZERO)
#1111K          DELETE FROM ADDR UP
#1111.1122K     DELETE RANGE OF INSTRUCS
                 (END ADDR ROUNTED UP TO
                  WHOLE INSTRUCTION)

#111<222.333S   SMART MOVE: MOVE MEMORY,
                 ADJUST REFS & SYMBOLS,
                 ZERO OUT VACATED SPACE

#1111?          FIND ABS REFS TO ADDR
#1111.2222?     FIND ABS REFS TO RANGE

 == WORKING WITH DISKETTES (NAKEDOS) ==

  NOTE: FILE NUMBERS MUST BE DF01.DFFD

#R              SHOW DISK CATALOG
#DF11R          READ FILE TO PROG. AREA
                 (AND READ SYMBOL TABLE)
#1111<DF22R     READ FILE TO ADDRESS
                 (ENTIRE FILE ONLY)

#XYZ<DF22R      HANDY TO USE SYMBOLS
#XYZR           ...FOR EASIER COMMANDS

#DF33W          WRITE PROG. AREA TO FILE
                 (AND WRITE SYM TABLE)
#XYZ<1100.22FFW WRITE RANGE TO FILE
                 (WHOLE PAGES ONLY)

#DF44<0W        DELETE A FILE

#1800<DF01R     FILE 01 IS SPECIAL, RUNS
                ON BOOT AT ADDR 1800

          == MISCELLANEOUS ==

#I             SET INVERSE TEXT
#I             SET NORMAL TEXT

#1^P (CTRL-P)  OUTPUT TEXT TO SLOT
#1^I (CTRL-I)  INPUT TEXT FROM SLOT

#11+22         8-BIT ADD
#44-33         8-BIT SUBTRACT

#SYM+1111      16-BIT MATH: SYMBOLS ONLY
#SYM-1111        "

#^Y  (CTRL-Y)  JMP TO USER CMD AT 03F8

#1111$         CONVERT DECIMAL TO HEX
#$2222         CONVERT HEX TO DECIMAL

NOTE: DEC-TO-HEX AND BACK REQUIRE
      "SHORT" SUPPORT TO BE PRESENT.

This page is from Super-mon's built-in help system.

Updated