mirror of
https://github.com/A2osX/A2osX.git
synced 2024-10-31 23:09:33 +00:00
136 lines
3.3 KiB
Plaintext
136 lines
3.3 KiB
Plaintext
NEW
|
||
AUTO 3,1
|
||
.LIST OFF
|
||
.OR $6480
|
||
.TF fse
|
||
*--------------------------------
|
||
* S-C MACRO ASSEMBLER SCREEN EDITOR
|
||
*
|
||
* BY MIKE LAUMER
|
||
* LAUMER RESEARCH
|
||
* 1832 SCHOOL RD.
|
||
* CARROLLTON, TEXAS 75006
|
||
*
|
||
* (214) 245-3927
|
||
*
|
||
* modified 7/10/85 by:
|
||
* David C. Johnson of
|
||
* Applied Engineering
|
||
* 3216 Beltline Rd, Suite 610
|
||
* Dallas, TX 75234
|
||
* (214) 241-6060
|
||
*
|
||
* changes include:
|
||
* operates under SCASM 2.0 - ProDOS
|
||
* fixing blank lines entered w/^L (see INS.TBL),
|
||
* changing E.SHIFT to test SKMOD.FLG,
|
||
* allowing lowercase escape mode characters,
|
||
* eliminating MouseText characters, and
|
||
* speeding up the //e driver some.
|
||
* many small changes too...
|
||
*--------------------------------
|
||
* DRIVER SELECTION PARAMETER
|
||
*
|
||
* DRVR = 0 .... STANDARD 40 COLUMN
|
||
* = 1 .... VIDEX 80-COLUMN
|
||
* = 2 .... STB80 80-COLUMN
|
||
* = 3 .... //e or //c 80-COLUMN
|
||
|
||
DRVR .EQ 3
|
||
|
||
.DO DRVR
|
||
SCR.SIZE .EQ 80 SCREEN WIDTH
|
||
.EL
|
||
SCR.SIZE .EQ 40 make screen width 40 automatically
|
||
.FI
|
||
*--------------------------------
|
||
FSE.VECTOR .EQ $8028
|
||
ESC.U.VECTOR .EQ $800C
|
||
|
||
INSTALLER
|
||
|
||
LDA #$4C JMP opcode
|
||
STA FSE.VECTOR
|
||
STA ESC.U.VECTOR
|
||
LDA #HARD
|
||
STA FSE.VECTOR+1
|
||
LDA /HARD
|
||
STA FSE.VECTOR+2
|
||
STA $BEFB Global Page HIMEM
|
||
LDA #REMOVER
|
||
STA ESC.U.VECTOR+1
|
||
LDA /REMOVER
|
||
STA ESC.U.VECTOR+2
|
||
JMP $8000 coldstart assembler
|
||
.BS $6500-*
|
||
*--------------------------------
|
||
|
||
.INB usr/src/fse/fse.s.1
|
||
.INB usr/src/fse/fse.s.2
|
||
.INB usr/src/fse/fse.s.3
|
||
.INB usr/src/fse/fse.s.line
|
||
.INB usr/src/fse/fse.s.submit
|
||
|
||
*--------------------------------
|
||
* EACH DRIVER MODULE LOADS HERE.
|
||
* DRIVER LINKAGE IS VIA A JUMP TABLE
|
||
* TO STANDARDIZE THEIR ENTRY POINTS.
|
||
*--------------------------------
|
||
*
|
||
OVERLAY.AREA
|
||
*
|
||
MY.RD.KBD .EQ OVERLAY.AREA KEYBOARD READ
|
||
MY.HTAB .EQ OVERLAY.AREA+3 HOTIZONTAL TAB
|
||
MY.VTAB .EQ OVERLAY.AREA+6 VERTICAL TAB
|
||
MY.CLREOL .EQ OVERLAY.AREA+9 CLEAR TO END OF LINE
|
||
MY.CLREOP .EQ OVERLAY.AREA+12 CLEAR TO END OF SCREEN
|
||
MY.COUT .EQ OVERLAY.AREA+15 CHARACTER OUTPUT
|
||
|
||
.DO DRVR=0
|
||
*--------------------------------
|
||
* STANDARD 40 COLUMN APPLE VIDEO DRIVER
|
||
*--------------------------------
|
||
.INB usr/src/fse/fse.s.a2
|
||
.FIN
|
||
|
||
.DO DRVR=1
|
||
*--------------------------------
|
||
* VIDEX 80 COLUMN VIDEO DRIVER
|
||
*--------------------------------
|
||
.INB usr/src/fse/fse.s.videx
|
||
.FIN
|
||
|
||
.DO DRVR=2
|
||
*--------------------------------
|
||
* STB80 80 COLUMN VIDEO DRIVER
|
||
*--------------------------------
|
||
.INB usr/src/fse/fse.s.stb80
|
||
.FIN
|
||
|
||
.DO DRVR=3
|
||
*--------------------------------
|
||
* APPLE IIE 80 COLUMN VIDEO DRIVER
|
||
*--------------------------------
|
||
.INB usr/src/fse/fse.s.a2e
|
||
.FIN
|
||
|
||
REMOVER
|
||
|
||
LDA #$60 RTS opcode
|
||
STA FSE.VECTOR
|
||
LDA #M.BELL
|
||
STA ESC.U.VECTOR+1
|
||
LDA /M.BELL
|
||
STA ESC.U.VECTOR+2
|
||
LDA /$7400
|
||
STA $BEFB Global Page HIMEM
|
||
JMP $8000 coldstart assembler
|
||
*--------------------------------
|
||
ZZ.END .DO *>$73FF OR EDITOR WILL BE TOO LARGE
|
||
!!! EXCEEDS $73FF
|
||
.FIN
|
||
*--------------------------------
|
||
MAN
|
||
SAVE usr/src/fse/fse.s
|
||
ASM
|