Files
RomWBW/branches/dwg/Apps/crossdev/TMSSTAT.ASM
doug e312ea9d7a this is the first serious commit of the entire apps suite.
not all there yet, but the core apps are, see coreapps.bat.
2013-02-16 05:36:54 +00:00

585 lines
8.5 KiB
NASM
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
extrn .begin,.chl,.swt
extrn csave,cret,.move
global style_,1
global vdp_rege_,960
global szTemp_,128
global linenum_,1
global counter_,1
global outer_,1
global inner_,1
global limit_,1
global index_,2
global line_,2
global ubyte_,1
global bitmask_,1
global row_,2
global bit_,2
global ascii_,2
global bool_,2
global fd_,2
PUBLIC main_
main_: lxi d,.2
call csave
LXI H,.1+0
PUSH H
CALL printf_
POP D
LXI H,0
PUSH H
CALL vdp_wrvr_
POP D
LXI H,152
PUSH H
CALL in_
POP D
LXI H,.1+77
PUSH H
LXI H,.1+65
PUSH H
CALL fopen_
POP D
POP D
SHLD fd_
LXI H,.1+79
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LXI H,.1+130
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LXI H,.1+185
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LXI H,0
SHLD line_
JMP .4
.3:
LHLD line_
INX H
SHLD line_
.4:
LHLD line_
LXI D,1024
XCHG
CALL .ul
JZ .5
LHLD line_
DAD H
DAD H
DAD H
DAD H
PUSH H
LXI H,.1+240
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
POP D
LXI H,0
XCHG
LXI H,3-.2
DAD SP
MOV M,E
JMP .7
.6:
LXI H,3-.2
DAD SP
PUSH H
MOV L,M
INX H
XCHG
POP H
MOV M,E
.7:
LXI H,3-.2
DAD SP
MOV E,M
MVI D,0
LXI H,16
CALL .lt
JZ .8
LXI H,152
PUSH H
CALL in_
POP D
PUSH H
LXI H,.1+247
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
POP D
JMP .6
.8:
LXI H,.1+253
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LHLD line_
PUSH H
LXI H,13
PUSH H
LXI H,.1+255
PUSH H
CALL printf_
POP D
POP D
POP D
JMP .3
.5:
LXI H,.1+265
PUSH H
CALL printf_
POP D
LXI H,0
PUSH H
CALL vdp_wrvr_
POP D
LXI H,152
PUSH H
CALL in_
POP D
LXI H,.1+290
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LXI H,.1+343
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LXI H,.1+386
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LXI H,0
SHLD line_
JMP .10
.9:
LHLD line_
INX H
SHLD line_
.10:
LHLD line_
LXI D,24
XCHG
CALL .ul
JZ .11
LHLD line_
PUSH H
LXI H,.1+441
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
POP D
LXI H,0
XCHG
LXI H,3-.2
DAD SP
MOV M,E
JMP .13
.12:
LXI H,3-.2
DAD SP
PUSH H
MOV L,M
INX H
XCHG
POP H
MOV M,E
.13:
LXI H,3-.2
DAD SP
MOV E,M
MVI D,0
LXI H,20
CALL .lt
JZ .14
LXI H,152
PUSH H
CALL in_
POP D
PUSH H
LXI H,.1+447
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
POP D
JMP .12
.14:
LXI H,.1+453
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LHLD line_
PUSH H
LXI H,.1+455
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
POP D
LXI H,0
XCHG
LXI H,3-.2
DAD SP
MOV M,E
JMP .16
.15:
LXI H,3-.2
DAD SP
PUSH H
MOV L,M
INX H
XCHG
POP H
MOV M,E
.16:
LXI H,3-.2
DAD SP
MOV E,M
MVI D,0
LXI H,20
CALL .lt
JZ .17
LXI H,152
PUSH H
CALL in_
POP D
PUSH H
LXI H,.1+461
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
POP D
JMP .15
.17:
LXI H,.1+467
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LHLD line_
PUSH H
LXI H,13
PUSH H
LXI H,.1+470
PUSH H
CALL printf_
POP D
POP D
POP D
JMP .9
.11:
LXI H,.1+480
PUSH H
CALL printf_
POP D
LXI H,.1+537
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LXI H,.1+589
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LXI H,.1+643
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LXI H,2048
PUSH H
CALL vdp_wrvr_
POP D
LXI H,152
PUSH H
CALL in_
POP D
LXI H,0
SHLD ascii_
JMP .19
.18:
LHLD ascii_
INX H
SHLD ascii_
.19:
LHLD ascii_
LXI D,256
XCHG
CALL .lt
JZ .20
LHLD ascii_
PUSH H
LXI H,13
PUSH H
LXI H,.1+652
PUSH H
CALL printf_
POP D
POP D
POP D
LHLD ascii_
PUSH H
LHLD ascii_
PUSH H
LXI H,.1+671
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
XCHG
LXI H,8
DAD SP
SPHL
LXI H,0
SHLD row_
JMP .22
.21:
LHLD row_
INX H
SHLD row_
.22:
LHLD row_
LXI D,8
XCHG
CALL .lt
JZ .23
LXI H,152
PUSH H
CALL in_
POP D
MOV A,L
STA ubyte_
LDA ubyte_
MOV L,A
MVI H,0
PUSH H
LXI H,.1+684
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
POP D
LXI H,0
SHLD bit_
JMP .25
.24:
LHLD bit_
INX H
SHLD bit_
.25:
LHLD bit_
LXI D,8
XCHG
CALL .lt
JZ .26
LXI H,7
XCHG
LHLD bit_
CALL .sb
PUSH H
LXI H,1
POP D
XCHG
CALL .ls
MOV A,L
STA bitmask_
LDA bitmask_
MOV L,A
MVI H,0
PUSH H
LDA ubyte_
MOV L,A
MVI H,0
POP D
CALL .an
SHLD bool_
LHLD bool_
MOV A,H
ORA L
JNZ .27
LXI H,.1+693
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
JMP .28
.27:
LXI H,.1+695
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
.28:
JMP .24
.26:
LXI H,.1+697
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
JMP .21
.23:
LXI H,.1+699
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LHLD line_
PUSH H
LXI H,13
PUSH H
LXI H,.1+701
PUSH H
CALL printf_
POP D
POP D
POP D
JMP .18
.20:
LXI H,.1+711
PUSH H
LHLD fd_
PUSH H
CALL fprintf_
POP D
POP D
LHLD fd_
PUSH H
CALL fclose_
POP D
LXI H,.1+766
PUSH H
CALL printf_
POP D
RET
.2 EQU -1
.1:
DB 116,109,115,115,116,97,116,46,99,111,109,32,49,48,47
DB 48,52,47,50,48,49,50,32,100,119,103,32,45,32,99
DB 114,101,97,116,101,32,116,109,115,57,57,49,56,46,100
DB 109,112,32,102,105,108,101,115,32,102,114,111,109,32,86
DB 82,65,77,10,0,116,109,115,57,57,49,56,46,100,109
DB 112,0,119,0,84,104,105,115,32,105,115,32,97,32,104
DB 101,120,97,100,101,99,105,109,97,108,32,100,117,109,112
DB 32,111,102,32,116,104,101,32,101,110,116,105,114,101,32
DB 49,54,75,32,86,82,65,77,10,0,65,100,100,114,58
DB 32,48,48,32,48,49,32,48,50,32,48,51,32,48,52
DB 32,48,53,32,48,54,32,48,55,32,48,56,32,48,57
DB 32,48,65,32,48,66,32,48,67,32,48,68,32,48,69
DB 32,48,70,10,0,45,45,45,45,45,45,45,45,45,45
DB 45,45,45,45,45,45,45,45,45,45,45,45,45,45,45
DB 45,45,45,45,45,45,45,45,45,45,45,45,45,45,45
DB 45,45,45,45,45,45,45,45,45,45,45,45,45,10,0
DB 37,48,52,120,58,32,0,37,48,50,120,32,0,10,0
DB 37,99,108,105,110,101,32,37,100,0,10,68,117,109,112
DB 32,111,102,32,86,82,65,77,32,67,111,109,112,108,101
DB 116,101,100,10,0,10,84,104,105,115,32,105,115,32,97
DB 32,104,101,120,97,100,101,99,105,56,109,97,108,32,100
DB 117,109,112,32,111,102,32,116,104,101,32,78,97,109,101
DB 32,84,97,98,108,101,32,102,111,114,32,10,0,116,104
DB 101,32,50,52,32,108,105,110,101,115,32,111,102,32,116
DB 104,101,32,100,105,115,112,108,97,121,32,105,110,32,84
DB 101,120,116,32,77,111,100,101,46,10,0,45,45,45,45
DB 45,45,45,45,45,45,45,45,45,45,45,45,45,45,45
DB 45,45,45,45,45,45,45,45,45,45,45,45,45,45,45
DB 45,45,45,45,45,45,45,45,45,45,45,45,45,45,45
DB 45,45,45,45,10,0,37,50,100,58,32,0,37,48,50
DB 120,32,0,10,0,37,50,100,58,32,0,37,48,50,120
DB 32,0,10,10,0,37,99,108,105,110,101,32,37,100,0
DB 10,68,117,109,112,32,111,102,32,78,97,109,101,32,84
DB 97,98,108,101,32,102,111,114,32,52,48,120,50,52,32
DB 84,101,120,116,32,77,111,100,101,32,76,105,110,101,115
DB 32,67,111,109,112,108,101,116,101,100,10,0,10,9,84
DB 104,105,115,32,105,115,32,97,32,72,101,120,97,100,101
DB 99,105,109,97,108,44,32,68,101,99,105,109,97,108,44
DB 32,97,110,100,32,71,114,97,112,104,105,99,32,100,117
DB 109,112,10,0,111,102,32,116,104,101,32,67,104,97,114
DB 97,99,116,101,114,32,71,101,110,101,114,97,116,111,114
DB 32,66,105,116,109,97,112,115,32,102,111,114,32,97,108
DB 108,32,50,53,54,32,65,83,67,73,73,32,0,99,104
DB 97,114,115,46,10,10,0,37,99,68,117,109,112,105,110
DB 103,32,65,83,67,73,73,32,37,100,0,48,120,37,50
DB 120,40,37,51,100,41,58,10,0,48,120,37,48,50,120
DB 58,32,0,32,0,42,0,10,0,10,0,37,99,108,105
DB 110,101,32,37,100,0,45,45,45,45,45,45,45,45,45
DB 45,45,45,45,45,45,45,45,45,45,45,45,45,45,45
DB 45,45,45,45,45,45,45,45,45,45,45,45,45,45,45
DB 45,45,45,45,45,45,45,45,45,45,45,45,45,45,10
DB 0,10,68,117,109,112,32,111,102,32,67,104,97,114,97
DB 99,116,101,114,32,66,105,116,109,97,112,32,68,97,116
DB 97,32,67,111,109,112,108,101,116,101,100,46,10,0
extrn fclose_
extrn fprintf_
extrn in_
extrn printf_
extrn vdp_wrvr_
extrn fopen_
extrn .an
extrn .lt
extrn .ul
extrn .ls
extrn .sb
END