home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 88
/
088.d81
/
t.mldocs
< prev
next >
Wrap
Text File
|
2022-08-26
|
21KB
|
774 lines
COMVIEW USERS MANUAL
by Rick Nash
Load COMVIEW as you would any
BASIC program, then simply type RUN to
start. At this point you will see the
main screen. It consists of two
parts. On the top is a window divided
into three parts. The upper left
window shows the current state of the
6502 registers. The lower left window
shows six bytes from any three memory
location in the computer. The right
window shows the current contents of
the hardware stack. At this point,
don't worry if you don't understand
any of this. It will become clear as
we begin to use different features of
COMVIEW.
The bottom window (Main window) is
the business end of COMVIEW. This is
where most of the work gets done.
Things like the memory command, the
assembler and disassembler use this
window for data entry and display. At
this point, a title message appears in
this window. Let us now turn our
attention to the MAIN MENU. Press the
Commodore key and M simultaneously.
---------------
THE MAIN MENU
---------------
At this point, the main menu is
displayed. Note the characters inside
the square brackets. These are the
"HOT" keys that are available while
this menu is shown. You can either
use the UP and DOWN CRSR keys to
choose your selection, then press
RETURN, or press the hot key for your
choice. In the tutorials, we will use
the following mnemonics for making
menu selections:
[MAIN-T] - means press the T hot
key on the MAIN menu.
Menu items followed by ellipses
(...) means that a sub-menu will open.
From all but the MAIN menu, the
back arrow is used as an escape key.
Pressing the escape key will halt
almost all operations (except quick
trace). Pressing the escape key from
a menu, will take you to the previous
menu. Some menus offer a "quick" exit
key that will zoom to the MAIN menu.
This option is clearly marked on menus
that support it. The remainder of
this manual will describe all of the
options and features of COMVIEW.
---------------
THE HELP MENU
---------------
Pressing [MAIN-H] will present the
HELP menu. There are three help
screens avaliable:
[HELP-G] - Will display a short
synopsis of legal keystrokes and
general information about COMVIEW.
[HELP-I] - Will bring up the
instruction set help menu. Select the
instruction using the UP, DOWN, LEFT
and RIGHT arrow keys. Then press
RETURN to enter your choice. A window
will open with full information on the
chosen instruction. This window
offers a ZOOM key (the RETURN key) to
zoom to the main menu.
[HELP-C] - Brings up the
conversion table. This table a
consists of five columns: DEC, HEX,
BINARY, ASCII and SCREEN CODES. Use
this for base conversions or
ASCII/SCREEN codes. Active keys are
the UP and DOWN CRSR keys and F7,
which will move forward one page.
Remember: to back out of anything,
press the BACK ARROW (COMVIEW escape
key).
---------------------
FILL MEMORY COMMAND
---------------------
Pressing [MAIN-I] will initiate
the fill memory command. This command
is used to initialize a section of
memory to a given value. Note that
you can change ANY memory location,
including where COMVIEW is residing,
so use this command carefully. Three
requesters will prompt you for the
starting, ending and fill byte. A
requester is a white box that appears
and asks for user input. Enter the
information, and press RETURN, or use
the escape key to cancel. After the
third requester, the memory will be
filled.
-------------
PREFERENCES
-------------
Pressing [MAIN-P] will show the
preferences menu. This menu allows
you to set up defaults for the way
COMVIEW acts. At this time, only two
entries are found on the preferences
screen:
[PREFS-S] - Will enable/disable
screen-swapping. Screen-swapping is
covered under the trace command.
[PREFS-R] - Will enable/disable
repeating keys. This will be noticed
on commands such as the MEMORY command
[MAIN-M].
Note the parentheses after each
item. If a large dot is shown, then
the feature is ENABLED, otherwise it
is DISABLED.
-------------
DISASSEMBLE
-------------
The disassemble command [MAIN-D],
will show a section of memory in
machine language mnemonic form. A
requester will ask for the starting
address, and then start the
disassembler. Active keys are the UP
and DOWN CRSR keys (meaning forward
and backward scrolling disassembly),
and of course the escape key. Note
that disassembling a data table will
produce garbage mnemonics (watch the
ASCII field), but if real ML follows
the table, the disassembler will right
itself after several bytes. Here is a
sample disassembled line:
A B C D E
------------------------------
EACD C0 41 CPY #$41 ;-A
field a = hexadecimal address
b = machine bytes (hex)
c = mnemonic disassembly
d = operand
e = ASCII representation
----------
ASSEMBLE
----------
The assemble [MAIN-A] command
allows you to enter machine language
mnemonics into memory. Note that this
command does not pretend to be a REAL
assembler (see ROCK'S ASSEMBLER,
published on LOADSTAR #87). Rather,
it allows you to quickly and easily
enter small chunks of code. It does
however offer a few niceties such as
limited labels, decimal or hex
operands and several pseudo-ops.
After entering the address at the
requester, you are placed at the main
window with the address listed, and a
flashing cursor. COMVIEW is waiting
for a line of machine code to be
entered, such as:
LDA #$00 <RETURN>
or
LDA #0 <RETURN>
After pressing RETURN, the line is
converted to machine code and inserted
into memory. The next address is
shown, and the process continues. The
DEL key can be used to erase any
mistakes before pressing the RETURN
key. Errors are flagged by an error
window that pops up above the main
window. The error is described, and
the line is shown with an arrow
pointing at the infraction. Pressing
C will allow you to continue entering
mnemonics.
PSEUDO OPS
Pseudo ops are mnemonics for the
assembler, not the 6502. Three
Pseudo's are legal:
ORG address - change the current
address
BYT value - enter the byte (or
word) at the current location
WOR value - enter the current
word (hex or decimal)
(note: BYT $1234 and WOR $1234
will produce like output, 34 12)
--------
LABELS
--------
Limited labels are supported.
Use labels only on RELATIVE branch
instructions. A minus (-) followed by
the character 0-9 for backwards
branches, and a plus (+) followed by
the character 0-9 for forward
branches.
For example:
LDX #0
-0 TXA
CPX #40
BEQ +8
STA $C100,X
INX
BNE -0
+8 RTS
This nonsense code demonstrates
the use of forward and backward
labels. Note that the + and - are not
mathematical, they simply are mnemonic
for forwards and backwards. You must
keep track of all labels. Since there
is no source code, any label that
scrolls from the screen will be lost
forever, so jot down your labels. Any
forward label not referenced will NOT
be flagged! This is handled by making
the branch point to itself. For
example:
C020 BNE +5
Will be installed as:
C020 BNE $C020 a
until the +5 is referenced again.
If you forgot to reference it, an
endless loop will result. If your
program hangs, this is probably why.
Consider yourself warned!
To stop the assembler, just press
the escape key.
----------
REGISTER
----------
The register command [MAIN-R] is
used to set the initial value of the
.A, .X or .Y registers (register names
will be preceded with a period in this
manual). When selected, a requester
will prompt for a register value.
After pressing RETURN, you will notice
a highlighted bar over the .A register
in the register window on the upper
left of your screen. The value shown
will be the number you typed in. If
you move the bar with the UP or DOWN
CRSR keys, note that your number
"floa