📄 testasm.asm
字号:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; THIS FILE IS USED TO TEST THE C FUNCTION CALL IN ASM FILES ;
; THE HEAD IS PLACED IN TESTASM.HD ;
; THE TAIL IS PLACED IN TESTASM.TL ;
; THIS PROGRAM IS DERIVED FROM THE EXAMPLE OF 'CFIR' ;
; AND THE RESULT IS THE SAME
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
.mmregs
; HEAD
.INCLUDE "TESTASM.HD"
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; DATA SEGMENT ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
.DATA
.GLOBAL _P
_P .SPACE 32*16
.GLOBAL _X
_X .WORD 03000H, 03000H, 02000H, 02000H, 01000H, 01000H, 00000H, 00000H
.WORD 0F000H, 0F000H, 0E000H, 0E000H, 0D000H, 0D000H, 0C000H, 0C000H
.WORD 0B000H, 0B000H, 0A000H, 0A000H, 09000H, 09000H, 08000H, 08000H
.WORD 07000H, 07000H, 06000H, 06000H, 05000H, 05000H, 04000H, 04000H
.GLOBAL _Y
_Y .WORD 04000H, 04000H, 03000H, 03000H, 02000H, 02000H, 01000H, 01000H
.WORD 00000H, 00000H, 0F000H, 0F000H, 0E000H, 0E000H, 0D000H, 0D000H
.GLOBAL _DPTR
.BSS _DPTR, 1
.GLOBAL _OFLAG
.BSS _OFLAG, 1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; TEXT SEGMENT ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
.TEXT
INIT: LD #0, ARP
RSBX C16
RSBX CMPT
RSBX FRCT
STM #00280H, SP ; STACK POINTER
ST #_P, *(_DPTR)
ST #16, *SP(04H)
ST #8, *SP(03H)
ST #_DPTR, *SP(02H)
ST #_X, *SP(01H)
ST #_Y, *SP(00H)
LD #_X,A
.REF _cfir
CALL #_cfir
LD A, A
STL A, *(_OFLAG)
WAIT: B WAIT
; TAIL
.INCLUDE "TESTASM.TL"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -