Starting uxndis
This commit is contained in:
parent
4f273fb926
commit
fa52bd7eba
|
@ -0,0 +1,30 @@
|
|||
ID=uxndis
|
||||
DIR=~/roms
|
||||
ASM=uxncli ${DIR}/drifblim.rom
|
||||
LIN=uxncli ${DIR}/uxnlin.rom
|
||||
BAL=uxncli ${DIR}/uxnbal.rom
|
||||
EMU=uxncli
|
||||
ROM=bin/${ID}.rom
|
||||
|
||||
all: ${ROM}
|
||||
|
||||
lint:
|
||||
@ ${LIN} src/${ID}.tal
|
||||
bal:
|
||||
@ ${BAL} src/${ID}.tal
|
||||
run: all
|
||||
@ ${EMU} ${ROM} etc/example.tal
|
||||
clean:
|
||||
@ rm -f ${ROM} ${ROM}.sym
|
||||
install: all
|
||||
@ cp ${ROM} ${DIR}
|
||||
uninstall:
|
||||
@ rm -f ${DIR}/${ID}.rom
|
||||
archive: all
|
||||
@ cp src/${ID}.tal ../oscean/etc/${ID}.tal.txt
|
||||
|
||||
.PHONY: all clean lint run install uninstall archive
|
||||
|
||||
${ROM}: src/${ID}.tal
|
||||
@ mkdir -p bin && ${ASM} src/${ID}.tal ${ROM}
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
|10 @Console &vector $2 &read $1 &pad $4 &type $1 &write $1 &error $1
|
||||
|a0 @File &vector $2 &success $2 &stat $2 &delete $1 &append $1 &name $2 &length $2 &read $2 &write $2
|
||||
|000
|
||||
|
||||
@src $40
|
||||
|
||||
|100
|
||||
|
||||
@on-reset ( -> )
|
||||
;meta #06 DEO2
|
||||
;await-src .Console/vector DEO2
|
||||
.Console/type DEI ?{ ;dict/usage <pstr>
|
||||
#000f DEO }
|
||||
BRK
|
||||
|
||||
@meta $1
|
||||
( name ) "Uxndis 0a
|
||||
( desc ) "Uxntal 20 "Disassembler 0a
|
||||
( auth ) "By 20 "Devine 20 "Lu 20 "Linvega 0a
|
||||
( date ) "9 20 "Jun 20 "2024 $2
|
||||
|
||||
@await-src ( -> )
|
||||
[ LIT2 04 -Console/type ] DEI NEQ ?{ <dis>
|
||||
#800f DEO
|
||||
BRK }
|
||||
.Console/read DEI [ LIT &ptr -src ] INCk ,&ptr STR
|
||||
STZ
|
||||
BRK
|
||||
|
||||
@<dis> ( -- )
|
||||
;src <pstr> #0a18 DEO
|
||||
JMP2r
|
||||
|
||||
(
|
||||
@|stdlib )
|
||||
|
||||
@<phex> ( short* -: )
|
||||
SWP /b
|
||||
&b ( byte -: )
|
||||
DUP #04 SFT /c
|
||||
&c ( byte -: )
|
||||
#0f AND DUP #09 GTH #27 MUL ADD [ LIT "0 ] ADD #18 DEO
|
||||
JMP2r
|
||||
|
||||
@<pstr> ( str* -- )
|
||||
LDAk #18 DEO
|
||||
INC2 LDAk ?<pstr>
|
||||
POP2 JMP2r
|
||||
|
||||
@opcodes [
|
||||
"LIT "INC "POP "NIP "SWP "ROT "DUP "OVR
|
||||
"EQU "NEQ "GTH "LTH "JMP "JCN "JSR "STH
|
||||
"LDZ "STZ "LDR "STR "LDA "STA "DEI "DEO
|
||||
"ADD "SUB "MUL "DIV "AND "ORA "EOR "SFT
|
||||
&brk "BRK ]
|
||||
|
||||
@dict &usage "usage: 20 "uxndis.rom 20 "input.rom 0a $1
|
||||
|
Loading…
Reference in New Issue