0,0 → 1,417 |
|
|
reserve EQU Mreserve-main_task |
|
|
|
amain: |
MOV [ByeLevel],ESP |
mov edi, main_task |
call cfa_INIT |
ret |
|
TIB_SIZE EQU 1027 |
PAD_SIZE EQU 1027 |
|
include 'img.asm' |
|
cfa_AHEADER 0,"BYE",_BYE |
MOV ESP,[ByeLevel] |
RET |
|
|
cfa_AHEADER 0,"_SLITERAL-CODE",_SLITERALminusCODE |
LEA EBP, [EBP-8] |
MOV [EBP+4], EAX |
POP EBX |
MOVZX EAX, BYTE [EBX] |
LEA EBX, [EBX+1] |
MOV [EBP], EBX |
LEA EBX, [EBX+EAX] |
LEA EBX, [EBX+1] |
JMP EBX |
|
|
|
cfa_AHEADER 0,"_CONSTANT-CODE",_CONSTANTminusCODE |
LEA EBP,[EBP-4] |
MOV [EBP],EAX |
POP EAX |
MOV EAX,[EAX] |
RET |
|
cfa_AHEADER 0,"_CREATE-CODE",_CREATEminusCODE |
DB 083H ,0EDH ,4 |
DB 089H ,045H ,0 |
DB 058H |
DB 0C3H |
|
cfa_AHEADER 0,"_TOVALUE-CODE",_TOVALUEminusCODE |
DB 05BH |
DB 08DH ,05BH ,0F7H |
DB 089H ,03 |
DB 08BH ,045H ,00 |
DB 08DH ,06DH ,04 |
DB 0C3H |
|
cfa_AHEADER 0,"TOVALUE-CODE",TOVALUEminusCODE |
call cfa__CONSTANTminusCODE |
DD cfa__TOVALUEminusCODE |
call cfa__TOVALUEminusCODE |
|
cfa_AHEADER 0,"VECT-CODE",VECTminusCODE |
call cfa__CONSTANTminusCODE |
DD cfa__VECTminusCODE |
call cfa__TOVALUEminusCODE |
|
cfa_AHEADER 0,"_VECT-CODE",_VECTminusCODE |
DB 05BH |
DB 0FFH ,023H |
|
cfa_AHEADER 0,"_USER-VALUE-CODE", _USERminusVALUEminusCODE |
LEA EBP,[EBP-4] |
MOV [EBP],EAX |
POP EAX |
MOV EAX,[EAX] |
LEA EAX,[EDI+EAX] |
MOV EAX,[EAX] |
RET |
|
cfa_AHEADER 0,"USER-VALUE-CODE",USERminusVALUEminusCODE |
call cfa__CONSTANTminusCODE |
DD cfa__USERminusVALUEminusCODE |
call cfa__TOVALUEminusCODE |
|
cfa_AHEADER 0,"_TOUSER-VALUE-CODE",_TOUSERminusVALUEminusCODE |
DB 05BH |
DB 083H ,0EBH ,09 |
DB 08BH ,01BH |
DB 03 ,0DFH |
DB 089H ,03 |
DB 08BH ,045H ,00 |
DB 083H ,0C5H ,04 |
DB 0C3H |
|
cfa_AHEADER 0,"TOUSER-VALUE-CODE",TOUSERminusVALUEminusCODE |
call cfa__CONSTANTminusCODE |
DD cfa__TOUSERminusVALUEminusCODE |
call cfa__TOVALUEminusCODE |
|
cfa_AHEADER 0,"_USER-CODE", _USERminusCODE |
LEA EBP,[EBP-4] |
MOV [EBP],EAX |
POP EAX |
MOV EAX,[EAX] |
LEA EAX,[EDI+EAX] |
RET |
|
cfa_AHEADER 0,"DOES>A",DOESgreatA |
call cfa__USERminusCODE |
DD T_DOESgreatA-main_task |
|
cfa_AHEADER 0,"USER-CODE",USERminusCODE |
call cfa__CONSTANTminusCODE |
DD cfa__USERminusCODE |
call cfa__TOVALUEminusCODE |
|
cfa_AHEADER 0,"CREATE-CODE",CREATEminusCODE |
call cfa__CONSTANTminusCODE |
DD cfa__CREATEminusCODE |
call cfa__TOVALUEminusCODE |
|
cfa_AHEADER 0,"CONSTANT-CODE",CONSTANTminusCODE |
call cfa__CONSTANTminusCODE |
DD cfa__CONSTANTminusCODE |
call cfa__TOVALUEminusCODE |
|
cfa_AHEADER 0,"_CLITERAL-CODE",_CLITERALminusCODE |
DB 083H ,0EDH ,04 |
DB 089H ,045H ,00 |
DB 058H |
DB 0FH ,0B6H ,018H |
DB 08DH ,05CH ,03 ,02 |
DB 0FFH ,0E3H |
|
cfa_AHEADER 0,"CLITERAL-CODE",CLITERALminusCODE |
call cfa__CONSTANTminusCODE |
DD cfa__CLITERALminusCODE |
call cfa__TOVALUEminusCODE |
|
|
cfa_AHEADER 0,'BASE',BASE |
call cfa__USERminusCODE |
DD T_BASE-main_task |
|
cfa_AHEADER 0,'PAD',PAD |
call cfa__USERminusCODE |
DD T_PAD-main_task |
|
cfa_AHEADER 0,'LAST',LAST |
call cfa__CREATEminusCODE |
DD LastNFA |
|
cfa_AHEADER 0,'DP',DP |
call cfa__CONSTANTminusCODE |
DD CP_P ; DP_BUFF |
|
cfa_AHEADER 0,'''DROP_V',ticDROP_V |
call cfa__CONSTANTminusCODE+00H |
DD cfa_DROP |
call cfa__TOVALUEminusCODE+00H |
|
cfa_AHEADER 0,'''DUP_V',ticDUP_V |
|
call cfa__CONSTANTminusCODE |
DD cfa_DUP |
call cfa__TOVALUEminusCODE+00H |
|
cfa_AHEADER 0,'CONTEXT',_CONTEXT |
call cfa__USERminusVALUEminusCODE |
DD T_CONTEXT-main_task |
call cfa__TOUSERminusVALUEminusCODE |
|
cfa_AHEADER 0,'>IN',greatIN |
call cfa__USERminusCODE |
DD T_greatIN-main_task |
|
cfa_AHEADER 0,'>OUT',greatOUT |
call cfa__CREATEminusCODE |
TO_OUT dd 0 |
|
cfa_AHEADER 0,'CURFILE',CURFILE |
call cfa__USERminusCODE |
DD T_CURFILE-main_task |
|
cfa_AHEADER 0,'S0',S0 |
call cfa__USERminusCODE |
DD T_S0-main_task |
|
cfa_AHEADER 0,'R0',R0 |
call cfa__USERminusCODE |
DD T_R0-main_task |
|
cfa_AHEADER 0,'SOURCE-ID',SOURCEminusID |
call cfa__USERminusVALUEminusCODE |
DD T_SOURCEminusID-main_task |
call cfa__TOUSERminusVALUEminusCODE |
|
cfa_AHEADER 0,'TIB',TIB |
call cfa__USERminusVALUEminusCODE |
DD T_TIB-main_task |
call cfa__TOUSERminusVALUEminusCODE |
|
cfa_AHEADER 0,'#TIN',nTIB |
call cfa__USERminusCODE |
DD T_nTIB-main_task |
|
cfa_AHEADER 0,'CURSTR',CURSTR |
call cfa__USERminusCODE |
DD T_CURSTR-main_task |
|
cfa_AHEADER 0,'SLITERAL-CODE',SLITERALminusCODE |
call cfa__CONSTANTminusCODE |
DD cfa__SLITERALminusCODE |
call cfa__TOVALUEminusCODE |
|
cfa_AHEADER 0,'USER-OFFS',USERminusOFFS |
call cfa__CREATEminusCODE |
DD reserve+MUSEROFFS |
|
cfa_AHEADER 0,'HANDLER',HANDLER |
call cfa__USERminusCODE |
DD T_HANDLER-main_task |
|
cfa_AHEADER 0,'STATE',STATE |
call cfa__USERminusCODE |
DD T_STATE-main_task |
|
cfa_AHEADER 0,'CURRENT',CURRENT |
call cfa__USERminusCODE |
DD T_CURRENT-main_task |
|
cfa_AHEADER 0,'W-CNT',WminusCNT |
call cfa__USERminusCODE |
DD T_WminusCNT-main_task |
|
cfa_AHEADER 0,'S-O',SminusO |
call cfa__USERminusCODE |
DD T_SminusO-main_task |
|
cfa_AHEADER 0,'ER-U',ERminusU |
call cfa__USERminusCODE |
DD T_ERminusU-main_task |
|
cfa_AHEADER 0,'ER-A',ERminusA |
call cfa__USERminusCODE |
DD T_ERminusA-main_task |
|
cfa_AHEADER 0,'FORTH-WORDLIST',FORTHminusWORDLIST |
call cfa__CONSTANTminusCODE |
DD T_FORTH+4 |
call cfa__TOVALUEminusCODE |
|
cfa_AHEADER 0,'VOC-LIST',VOCminusLIST |
call cfa__CREATEminusCODE |
DD T_FORTH |
|
cfa_AHEADER 0,'WARNING',WARNING |
call cfa__USERminusCODE |
DD T_WARNING-main_task |
|
;cfa_AHEADER 0,'LAST_KEY',LAST_KEY |
; call cfa__CREATEminusCODE |
; DD last_key |
|
cfa_AHEADER 0,"BLK",BLK |
call cfa__USERminusCODE |
DD T_BLK-main_task |
|
|
|
;cfa_AHEADER 0,"UZERO",UZERO_M |
; call cfa__CONSTANTminusCODE |
; DD UZERO |
|
cfa_AHEADER 0,"UPP",UPP_M |
call cfa__CONSTANTminusCODE |
DD UPP |
|
cfa_AHEADER 0,"ULAST",ULAST_M |
call cfa__CONSTANTminusCODE |
DD ULAST |
|
cfa_AHEADER 0,"SPP",SPP_M |
call cfa__CONSTANTminusCODE |
DD SPP |
cfa_AHEADER 0,"TIBB",TIBB_M |
call cfa__CONSTANTminusCODE |
DD TIBB |
|
cfa_AHEADER 0,"#TIB",NTIB_M |
call cfa__CONSTANTminusCODE |
DD NTIB_P |
|
cfa_AHEADER 0,"sbuf",screen_buf_M |
call cfa__CONSTANTminusCODE |
DD screen_buf |
|
cfa_AHEADER 0,"cursor",cursor_M |
call cfa__CONSTANTminusCODE |
DD cursor |
|
cfa_AHEADER 0,"FINFO",FINFO |
call cfa__CREATEminusCODE |
DD FINFO |
|
cfa_AHEADER 0,"ROWH",ROWH |
call cfa__CONSTANTminusCODE |
DD ROWH |
call cfa__TOVALUEminusCODE |
|
cfa_AHEADER 0,"ROWW",ROWW |
call cfa__CONSTANTminusCODE |
DD 6 |
call cfa__TOVALUEminusCODE |
|
cfa_AHEADER 0,"MEMS",MEMS |
call cfa__CONSTANTminusCODE |
DD MEMS |
|
cfa_AHEADER 0,"draw_window",draw_window |
PUSH EDI |
CALL draw_window |
POP EDI |
RET |
|
; cfa_AHEADER 0,'MEBLK',MEBLK |
; call cfa__USERminusCODE |
; DD BLK_P-main_task |
|
main_task: |
T_R0: |
DD 0 |
T_S0: |
DD SPP ;STACK0 |
T_WARNING: |
DD -1 |
T_STATE: |
DD 0 |
T_BLK: |
DD 0 |
T_CURFILE: |
DD 0 |
T_HANDLER: |
DD 0 |
T_HLD: |
DD 5 |
T_BASE: |
DD 0AH |
DD PAD_SIZE DUP (0) |
T_PAD: |
DD PAD_SIZE DUP (0) |
T_ERminusA: |
DD 0 |
T_ERminusU: |
DD 0 |
T_DOESgreatA: |
DD 0 |
;T_ALIGNminusBYTES: |
DD 0 |
T_nTIB: |
DD 0 |
T_greatIN: |
DD 5 |
T_TIB: |
DD T_ATIB |
T_ATIB: |
DD TIB_SIZE DUP (0) |
T_SOURCEminusID: |
DD 0 |
T_CURSTR: |
DD 0 |
T_WBWminusNFA: |
DD 0 |
T_WBWminusOFFS: |
DD 0 |
T_CURRENT: |
DD T_FORTH+4 |
T_SminusO: |
DD T_FORTH+4,T_FORTH+4 |
DD 16 DUP (0) |
T_CONTEXT: |
DD T_SminusO |
T_greatOUT: |
DD 0 |
T_WminusCNT: |
DD 0 |
T_NNN: |
DD 0 |
Mreserve: |
DD MUSEROFFS DUP (0) |
UPP: |
|
BASE_P DD BASEE |
TEMP_P DD 0 |
INN_P DD 0 |
NTIB_P DD 0 |
TIB_P DD TIBB |
;TEVAL_P DD INTER |
HLD_P DD 0 |
CNTXT_P DD 0 |
CP_P DD CTOP |
;LAST_P DD LASTN ;LAST |
EMIT_PROC_P DD -1 ; EMITPROC |
reg_struc_P DD 0 |
; BLK_P DD FILE_B |
; fi_struc_P DD FINFO |
workarea_P DD os_work |
|
DD 1000 DUP (0) |
|
T_FORTH: |
DD 0 ; ¤«ï VOC-LIST |
DD LastNFA ; ¤à¥á ¯®á«¥¤¥£® ¨¬¥¨ !!!!!!!! |
DD 0 ; ¯à¥¤®ª |
DD 0 ; ª« áá |
|
ByeLevel DD 0 |