forked from Apple-2-Tools/jace
Putting these help files here for now but need to hook them up to the IDE menus
This commit is contained in:
parent
72dc7b5318
commit
0abc87675b
296
src/main/resources/codemirror/pokes-peeks-calls.html
Normal file
296
src/main/resources/codemirror/pokes-peeks-calls.html
Normal file
@ -0,0 +1,296 @@
|
|||||||
|
$F800 PLOT
|
||||||
|
$F819 HLIN
|
||||||
|
$F828 VLIN
|
||||||
|
$F864 COLOR=
|
||||||
|
$F871 SCRN(
|
||||||
|
$F94A HTAB (input in X register)
|
||||||
|
$FAA6 REBOOT
|
||||||
|
$FB1E PDL(
|
||||||
|
$FB39 TEXT
|
||||||
|
$FB40 GR
|
||||||
|
$FB5B VTAB (input in X register)
|
||||||
|
$FB60 BANNER (doesn't work on clones, sometimes crashes a IIgs)
|
||||||
|
$FC58 CLRSCR
|
||||||
|
$FC9C CLREOL
|
||||||
|
$FDOC GETCH
|
||||||
|
(basically deadwaits on the highorder bit of $C000, then hits $C010)
|
||||||
|
$FDED PUTCH (input in A register)
|
||||||
|
(for NORMAL text set the high-order bit)
|
||||||
|
$FD6A GETLIN (output to address $200 and up. with CR termination)
|
||||||
|
(length of string minus the CR is stored in the X register)
|
||||||
|
|
||||||
|
AppleSoft Graphic, Input, Output and String Instructions
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
GR
|
||||||
|
|
||||||
|
; Method 1
|
||||||
|
JSR $FB40 ; Sets Lo-Res graphics mode with 4 lines of text
|
||||||
|
; and clears the graphic area to black
|
||||||
|
|
||||||
|
|
||||||
|
;Method 2
|
||||||
|
STA $C050 ; Sets Lo-Res graphics mode with 4 lines of text
|
||||||
|
STA $C053 ; but doesn't clear the graphics area
|
||||||
|
STA $C054
|
||||||
|
STA $C056
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
COLOR
|
||||||
|
|
||||||
|
LDA #N ; Sets the plotting color to N, 0 <= N <= 15
|
||||||
|
JSR $F864
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
PLOT
|
||||||
|
|
||||||
|
LDY #X ; Lo-Res Plot X (Horizontal) Coordinate (0-39)
|
||||||
|
LDA #Y ; Lo-Res Plot Y (Vertical) Coordinate (0-39)
|
||||||
|
JSR $F800
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
HLIN
|
||||||
|
|
||||||
|
LDA #Y ; Y Coordinate (0-39)
|
||||||
|
LDY #Xr ; Rightmost X Coordinate (0-39)
|
||||||
|
STY $2C ; Store it at H2
|
||||||
|
LDY #Xl ; Leftmost X Coordinate (0-39)
|
||||||
|
JSR $F819
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
VLIN
|
||||||
|
|
||||||
|
LDY #X ; X Coordinate (0-39)
|
||||||
|
LDA #Yb ; Bottom Y Coordinate (0-39)
|
||||||
|
STA $2C ; Store it at V2
|
||||||
|
LDA #Yt ; Top Y Coordinate (0-39)
|
||||||
|
JSR $F828
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
SCRN
|
||||||
|
|
||||||
|
LDY #X ; X Coordinate (0-39)
|
||||||
|
LDA #Y ; Y Coordinate (0-39)
|
||||||
|
JSR $F871 ; Result (0-15) in Accumulator
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
HGR
|
||||||
|
|
||||||
|
; Method 1
|
||||||
|
JSR $F3E2 ; Sets Hi-Res Mode with 4 lines of text,
|
||||||
|
; and clears the graphics screen
|
||||||
|
|
||||||
|
; Method 2
|
||||||
|
STA $C050 ; Sets Hi-Res Mode with 4 lines of text,
|
||||||
|
STA $C053 ; and doesn't clear the graphics screen
|
||||||
|
STA $C054
|
||||||
|
STA $C057
|
||||||
|
LDA #$20
|
||||||
|
STA $E6
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
HGR2
|
||||||
|
|
||||||
|
; Method 1
|
||||||
|
JSR $F3D8 ; Full Screen Hi-Res Page 2, Clears Screen
|
||||||
|
|
||||||
|
; Method 2
|
||||||
|
STA $C050 ; Full Screen Hi-Res Page 2, Doesn't Clear Screen
|
||||||
|
STA $C052
|
||||||
|
STA $C055
|
||||||
|
STA $C057
|
||||||
|
LDA #$40
|
||||||
|
STA $E6
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
HCOLOR
|
||||||
|
|
||||||
|
LDA #N ; Select Color N (0-7)
|
||||||
|
JSR $F6EC
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
HPLOT
|
||||||
|
|
||||||
|
LDX #Xl ; Low Byte of X Coordinate (0-255)
|
||||||
|
LDY #Xh ; High Byte of X Coordinate (0 or 1)
|
||||||
|
LDA #Y ; Y Coordinate (0-191)
|
||||||
|
JSR $F457
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
HPLOT TO
|
||||||
|
|
||||||
|
LDA #Xl ; Low Byte of X Coordinate (0-255)
|
||||||
|
LDX #Xh ; High Byte of X Coordinate (0 or 1)
|
||||||
|
LDY #Y ; Y Coordinate (0-191)
|
||||||
|
JSR $F53A
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
PDL(X)
|
||||||
|
|
||||||
|
LDX #N ; Select Paddle (0-3 on //e and II+; 0-1 on //c)
|
||||||
|
JSR $FB1E ; Result in Y register
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
ROT
|
||||||
|
|
||||||
|
LDA #N ; Sets rotation (0-255), immediately before DRAW
|
||||||
|
; or XDRAW call [See DRAW and XDRAW]
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
SCALE
|
||||||
|
|
||||||
|
LDA #N ; Sets SCALE, N = scale value
|
||||||
|
STA $E7
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
DRAW
|
||||||
|
|
||||||
|
LDY #Xh ; High byte of X Coordinate
|
||||||
|
LDX #Xl ; Low byte of X Coordinate
|
||||||
|
LDA #Y ; Y Coordinate
|
||||||
|
JSR $F411 ; Move Hi-Res Cursor
|
||||||
|
LDY #SAH ; High Byte of Actual Shape Address (not table)
|
||||||
|
LDX #SAL ; Low Byte of actual shape address
|
||||||
|
LDA #R ; Set Rotation
|
||||||
|
JSR $F601 ; Execute the DRAW Function
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
XDRAW
|
||||||
|
|
||||||
|
LDY #Xh ; High byte of X Coordinate
|
||||||
|
LDX #Xl ; Low byte of X Coordinate
|
||||||
|
LDA #Y ; Y Coordinate
|
||||||
|
JSR $F411 ; Move Hi-Res Cursor
|
||||||
|
LDY #SAH ; High Byte of Actual Shape Address (not table)
|
||||||
|
LDX #SAL ; Low Byte of actual shape address
|
||||||
|
LDA #R ; Set Rotation
|
||||||
|
JSR $F65D ; Execute the XDRAW Function
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
TEXT
|
||||||
|
|
||||||
|
; Method 1
|
||||||
|
JSR $FB2F ; Sets text mode, normal full-screen format
|
||||||
|
|
||||||
|
; Method 2
|
||||||
|
STA $C051 ; Text mode, window set to existing parameters
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
HOME
|
||||||
|
|
||||||
|
JSR $FC58 ; Clears Text Screen, Cursor to upper left
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
NORMAL
|
||||||
|
|
||||||
|
JSR $FE84 ; Set Normal-Text Mode
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
INVERSE
|
||||||
|
|
||||||
|
JSR $FE80 ; Set Inverse-Text Mode
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
FLASH
|
||||||
|
|
||||||
|
LDA #$7F ; Set Flashing-Text Mode
|
||||||
|
JSR $FE86
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
PRINT
|
||||||
|
|
||||||
|
JSR $FD8E ; Prints a carriage-return
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
PRINT "AB"
|
||||||
|
|
||||||
|
LDA #$C1 ; Code for letter "A"
|
||||||
|
JSR $FDED ; (COUT) Print "A"
|
||||||
|
LDA #$C2 ; Code for letter "B"
|
||||||
|
JSR $FDED ; (COUT) Print "B"
|
||||||
|
JSR $FD8E ; Print Carriage-Return
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
GET A$
|
||||||
|
|
||||||
|
JSR $FD0C ; Hex code of character is in Accumulator
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
VTAB
|
||||||
|
|
||||||
|
LDA #n ; Count
|
||||||
|
STA $25
|
||||||
|
JSR $FC22
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
RND
|
||||||
|
|
||||||
|
JSR $EFAE
|
||||||
|
LDA $9F ; Get Random Number
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
INPUT A$
|
||||||
|
|
||||||
|
JSR $FD6A ; On return, X register contains length of string
|
||||||
|
; and string data is at $200
|
||||||
|
|
||||||
|
STX addr ; Save Length of string at user address <addr>
|
||||||
|
TXA ; Move Length of Accumulator
|
||||||
|
BEQ L1 ; Jump to L1 if Length is 0
|
||||||
|
TAY ; Set Y register to Length
|
||||||
|
DEX ; Set X register to length - 1
|
||||||
|
L2:
|
||||||
|
LDA $200,X ; Get Character from $200 Buffer
|
||||||
|
STA addr,Y ; Save at user address buffer
|
||||||
|
DEX
|
||||||
|
DEY
|
||||||
|
BNE L2
|
||||||
|
L1:
|
||||||
|
RTS
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
PRINT A$;
|
||||||
|
|
||||||
|
LDA addr ; Get string length (first byte)
|
||||||
|
BEQ L2 ; Exit if Length is 0
|
||||||
|
LDX #1 ; Point to start of string
|
||||||
|
L1:
|
||||||
|
LDA addr,X ; Get Character
|
||||||
|
JSR $FDED ; Print Character
|
||||||
|
INX ; Move To Next Character
|
||||||
|
CPX addr ; Compare X Register to Length of String
|
||||||
|
BCC L1
|
||||||
|
BEQ L1
|
||||||
|
L2:
|
||||||
|
RTS
|
||||||
|
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
|
147
src/main/resources/codemirror/zero-page.html
Normal file
147
src/main/resources/codemirror/zero-page.html
Normal file
@ -0,0 +1,147 @@
|
|||||||
|
<i>This comes from the comp.sys.apple2 FAQ maintained by Jeff Hurlburt (rubywand@swbell.net)</i>
|
||||||
|
<br><br>
|
||||||
|
<p> When it comes to writing compact fast-executing
|
||||||
|
code, knowing which Zero Page locations are available is essential information
|
||||||
|
for assembly language programmers.
|
||||||
|
<p> The chart here uses information from Apple's
|
||||||
|
Apple II technical references, Beneath Apple DOS (by Worth and Lechner),
|
||||||
|
and Exploring Apple GS/OS and ProDOS 8 (by Little). It shows which Zero
|
||||||
|
Page locations are used by the Monitor, Applesoft BASIC, Integer BASIC,
|
||||||
|
DOS 3.3, ProDOS, and ProDOS BASIC.SYSTEM.
|
||||||
|
<br>
|
||||||
|
<p><b><tt> <font size=+1>Apple
|
||||||
|
II Zero Page Usage</font></tt></b>
|
||||||
|
<p><tt>
|
||||||
|
Lo Nibble of Address</tt>
|
||||||
|
<br><tt>Hi</tt>
|
||||||
|
<br><tt>Nib <b>0 1 2 3
|
||||||
|
4 5 6 7 8 9
|
||||||
|
A B C D E F</b></tt>
|
||||||
|
<br><tt> --- --- --- --- --- --- --- --- --- ---
|
||||||
|
--- --- --- --- --- ---</tt>
|
||||||
|
<br><tt><b> 0</b> | A~ A~ A A
|
||||||
|
A A - - - -
|
||||||
|
A A A AI A A</tt>
|
||||||
|
<br><tt><font color="#CC6600"><b> 1</b> | A A
|
||||||
|
A A A A A A
|
||||||
|
A A A A A A
|
||||||
|
- M*</font></tt>
|
||||||
|
<br><tt><b> 2</b> | M M M M
|
||||||
|
M3 M MA3 MA3 M3 M3 M3 M3 MA3
|
||||||
|
MA3 M3 MA3</tt>
|
||||||
|
<br><tt><font color="#CC6600"><b> 3</b> | MA M MA
|
||||||
|
MA3 M M3 M3B M3B M3B M3B M~ M~ MA3~MA3~MA3~MA3~</font></tt>
|
||||||
|
<br><tt><b> 4</b> | M3~ M3~ M3~ M3~ M3~ M3~ M3~ M3~ M3~ M3~ I3~ I3~
|
||||||
|
I3~ I3~ M~ M</tt>
|
||||||
|
<br><tt><font color="#CC6600"><b> 5</b> | MA MA MA
|
||||||
|
MA MA MAI AI AI AI AI AI AI
|
||||||
|
AI AI AI AI</font></tt>
|
||||||
|
<br><tt><b> 6</b> | AI AI AI AI AI AI
|
||||||
|
AI AI3 AI3 AI3 AI3 AI AI AI AI AI3</tt>
|
||||||
|
<br><tt><font color="#CC6600"><b> 7</b> | AI3 AI AI AI3
|
||||||
|
AI3 AI AI3 AI AI AI AI AI AI
|
||||||
|
AI AI AI</font></tt>
|
||||||
|
<br><tt><b> 8</b> | AI AI AI AI AI AI
|
||||||
|
AI AI AI AI AI AI AI AI
|
||||||
|
AI AI</tt>
|
||||||
|
<br><tt><font color="#CC6600"><b> 9</b> | AI AI AI
|
||||||
|
AI AI AI AI AI AI AI AI
|
||||||
|
AI AI AI AI AI</font></tt>
|
||||||
|
<br><tt><b> A</b> | AI AI AI AI AI AI
|
||||||
|
AI AI AI AI AI AI AI AI
|
||||||
|
AI AI3</tt>
|
||||||
|
<br><tt><font color="#CC6600"><b> B</b> | AI3 AI AI AI
|
||||||
|
AI AI AI AI AI AI AI AI
|
||||||
|
AI AI AI AI</font></tt>
|
||||||
|
<br><tt><b> C</b> | AI AI AI AI AI AI
|
||||||
|
AI AI AI AI AI3 AI3 AI3 AI3 I I</tt>
|
||||||
|
<br><tt><font color="#CC6600"><b> D</b> | AI AI AI
|
||||||
|
AI AI AI AI3 I AI3 AI3 AI AI
|
||||||
|
AI AI AI3 AI</font></tt>
|
||||||
|
<br><tt><b> E</b> | A A A A
|
||||||
|
A A A A A A
|
||||||
|
A - - - - -</tt>
|
||||||
|
<br><tt><font color="#CC6600"><b> F</b> | A A
|
||||||
|
A A A A A A
|
||||||
|
A A - - - -
|
||||||
|
I AI</font></tt>
|
||||||
|
<br>
|
||||||
|
<p><tt>M = Used by Monitor; * used in early Apple IIe ROMs-- now free</tt>
|
||||||
|
<br><tt>A = Used by Applesoft BASIC</tt>
|
||||||
|
<br><tt>I = Used by Integer BASIC</tt>
|
||||||
|
<br><tt>3 = Used by DOS 3.3</tt>
|
||||||
|
<br><tt>~ = Used by ProDOS ($40-$4E is saved before and restored after
|
||||||
|
use)</tt>
|
||||||
|
<br><tt>B = Used by ProDOS BASIC.SYSTEM (also uses all Applesoft locations)</tt>
|
||||||
|
<br><tt>- = Free; not used</tt>
|
||||||
|
<p>--Bryan Dunphy, Michael J. Mahon, Rubywand</p>
|
||||||
|
<hr>
|
||||||
|
<i> List compiled by Jon Relay </i>
|
||||||
|
<pre>
|
||||||
|
$06-$09 - Free Space (Address of Main Menu Routine for Jon Relay's Desktop)
|
||||||
|
$0A-$0C - JMP to USR() User Function Routine
|
||||||
|
$18 - First Data Track
|
||||||
|
$19 - First Data Sector
|
||||||
|
$1A-$1B - Shape Pointer for DRAW (???)
|
||||||
|
$1C - Last COLOR Used
|
||||||
|
$1D-$1E - Free Space
|
||||||
|
$20 - Left Margin (0 - 39/79, 0 is default)
|
||||||
|
$21 - Width (1 - 40/80, 40 is default, 0 crashes Applesoft)
|
||||||
|
$22 - Top Margin (0 - 23, 0 is default, 20 in graphics mode)
|
||||||
|
$23 - Bottom Margin (0 - 23, 23 is default)
|
||||||
|
$24 - Horizontal Cursor Position (0 - 39/79)
|
||||||
|
$25 - Vertical Cursor Position (0 - 23)
|
||||||
|
$26-$27 - Address of Byte Containing X,Y (???)
|
||||||
|
$28-$29 - Base Address of Text Cursor's Position
|
||||||
|
$2B - Boot Slot * 16
|
||||||
|
$2C - Lo-Res HLIN/VLIN Endpoint
|
||||||
|
$30 - COLOR Value * 17
|
||||||
|
$32 - Text Mask ($FF = Normal, $7F = Inverse, $3F = Flashing)
|
||||||
|
$33 - Prompt Character
|
||||||
|
$36-$37 - Address of Output Routine
|
||||||
|
$38-$39 - Address of Input Routine
|
||||||
|
$3C-$4E - Prodos/Dos 3.3 routines
|
||||||
|
$50-$51 - Result of the Conversion of the FAC to a 16-Bit Integer
|
||||||
|
$67-$68 - Address of Beginning of BASIC Program ($0801 is default)
|
||||||
|
$69-$6A - Address of Beginning of BASIC Variables (LOMEM / vartab)
|
||||||
|
$6B-$6C - Address of Beginning of BASIC Arrays
|
||||||
|
$6D-$6E - Address of End of BASIC Variables
|
||||||
|
$6F-$70 - Address of End of String Data
|
||||||
|
$71-$72 - Address to Move String To (???)
|
||||||
|
$73-$74 - Address of Beginning of String Data
|
||||||
|
$75-$76 - Current Line Number Being Executed
|
||||||
|
$77-$78 - Line Number Where END or STOP or BREAK Occurred
|
||||||
|
$79-$7A - Address of Line Number Being Executed
|
||||||
|
$7B-$7C - Current Address of DATA
|
||||||
|
$7D-$7E - Next Address of DATA
|
||||||
|
$7F-$80 - Address of Input or Data (???)
|
||||||
|
$81-$82 - Last Used Variable's Name
|
||||||
|
$83-$84 - Last Used Variable's Address
|
||||||
|
$9B-$9C - Pointer for $D61A and $F7D9 (???)
|
||||||
|
$9D-$A3 - Floating Point Accumulator (FAC)
|
||||||
|
$A5-$AB - Floating Point Argument Register (ARG)
|
||||||
|
$AF-$B0 - Address of End of BASIC Program
|
||||||
|
$B1-$B6 - Subroutine to Increase the String Data Pointer
|
||||||
|
$B7-$BE - Subroutine to Return the Character Pointed to by the String Data Pointer
|
||||||
|
$CE-$CF - Free Space
|
||||||
|
$D4 - Error Code Flag (???)
|
||||||
|
$D7 - Free Space
|
||||||
|
$D8 - Error Flag (>=128 if error handler active)
|
||||||
|
$DA-$DB - Line Number Where Error Occurred
|
||||||
|
$DE - Error Code
|
||||||
|
$E0-$E1 - Horizontal Coordinate of HPLOT
|
||||||
|
$E2 - Vertical Coordinate of HPLOT
|
||||||
|
$E3 - Free Space
|
||||||
|
$E4 - HCOLOR Value (0=0, 1=42, 2=85, 3=127, 4=128, 5=170, 6=213, 7=255)
|
||||||
|
$E6 - High Byte of Address of First Byte of Where HGR is Plotted
|
||||||
|
$E7 - SCALE Value (0 = 256)
|
||||||
|
$E8-$E9 - Address of Shape Table
|
||||||
|
$EA - DRAW/XDRAW Collision Count
|
||||||
|
$EB-$EF - Free Space
|
||||||
|
$F1 - SPEED Value (Subtracted From 256)
|
||||||
|
$F3 - Text OR mask (for flashing text)
|
||||||
|
$F4-$F5 - address of error handler (points to line number after ONERR GOTO...)
|
||||||
|
$F9 - ROT Value
|
||||||
|
$FA-$FE - Free Space
|
||||||
|
$FF - Free Space (Flag Bits for Jon Relay's Desktop), also used by Applesoft STR$ routine
|
||||||
|
</pre>
|
Loading…
Reference in New Issue
Block a user