(uxncore) starting opcodes
This commit is contained in:
parent
19d07ee38f
commit
3d14583f74
|
@ -28,9 +28,10 @@
|
|||
[ LIT2 "/ 18 ] DEO
|
||||
#2018 DEO
|
||||
( | body )
|
||||
;dict/break <pstr>
|
||||
#00 OVR #1f AND DUP ADD ;opc-lut ADD2 LDA2 JSR2
|
||||
( ) ;dict/break <pstr>
|
||||
#0a18 DEO
|
||||
POP JMP2r
|
||||
JMP2r
|
||||
|
||||
@<name> ( byte -- )
|
||||
( | special )
|
||||
|
@ -75,6 +76,90 @@
|
|||
[ LIT2 "x 18 ] DEO
|
||||
!<phex>/b
|
||||
|
||||
(
|
||||
@|body )
|
||||
|
||||
@opc-lut [
|
||||
=op-brk =op-inc =op-pop =op-brk
|
||||
=op-brk =op-brk =op-brk =op-brk
|
||||
=op-brk =op-brk =op-brk =op-brk
|
||||
=op-brk =op-brk =op-brk =op-brk
|
||||
=op-brk =op-brk =op-brk =op-brk
|
||||
=op-brk =op-brk =op-brk =op-brk
|
||||
=op-brk =op-brk =op-brk =op-brk
|
||||
=op-brk =op-brk =op-brk =op-brk ]
|
||||
|
||||
@op-brk ( byte -- )
|
||||
;dict/return <pstr>
|
||||
#2018 DEO
|
||||
POP JMP2r
|
||||
|
||||
@op-inc ( byte -- )
|
||||
<dat>
|
||||
[ LIT2 "[ 18 ] DEO
|
||||
<ptr>
|
||||
#01 <minus>
|
||||
[ LIT2 "] 18 ] DEO
|
||||
<inc>
|
||||
[ LIT2 "; 18 ] DEO
|
||||
#2018 DEO
|
||||
POP JMP2r
|
||||
|
||||
@op-pop ( byte -- )
|
||||
<ptr>
|
||||
<dec>
|
||||
[ LIT2 "; 18 ] DEO
|
||||
#2018 DEO
|
||||
POP JMP2r
|
||||
|
||||
@<inc> ( -- )
|
||||
[ LIT2 "+ 18 ] DEOk DEO
|
||||
JMP2r
|
||||
|
||||
@<dec> ( -- )
|
||||
[ LIT2 "- 18 ] DEOk DEO
|
||||
JMP2r
|
||||
|
||||
@<t> ( -- )
|
||||
[ LIT2 "t 18 ] DEO
|
||||
<equ>
|
||||
<ptr>
|
||||
#01 <minus>
|
||||
[ LIT2 "; 18 ] DEO
|
||||
#2018 DEO
|
||||
JMP2r
|
||||
|
||||
@<equ> ( -- )
|
||||
#2018 DEO
|
||||
[ LIT2 "= 18 ] DEO
|
||||
#2018 DEO
|
||||
JMP2r
|
||||
|
||||
@<minus> ( numchar -- )
|
||||
#2018 DEO
|
||||
[ LIT2 "- 18 ] DEO
|
||||
#2018 DEO
|
||||
[ LIT "0 ] ADD #18 DEO
|
||||
JMP2r
|
||||
|
||||
@<plus> ( numchar -- )
|
||||
#2018 DEO
|
||||
[ LIT2 "+ 18 ] DEO
|
||||
#2018 DEO
|
||||
[ LIT "0 ] ADD #18 DEO
|
||||
JMP2r
|
||||
|
||||
@<dat> ( -- )
|
||||
;dict/uxn-wst-dat <pstr>
|
||||
JMP2r
|
||||
|
||||
@<ptr> ( -- )
|
||||
;dict/uxn-wst-ptr <pstr>
|
||||
JMP2r
|
||||
|
||||
(
|
||||
@|utils )
|
||||
|
||||
@<phex> ( short* -: )
|
||||
SWP /b
|
||||
&b ( byte -: )
|
||||
|
@ -83,9 +168,6 @@
|
|||
#0f AND DUP #09 GTH #27 MUL ADD [ LIT "0 ] ADD #18 DEO
|
||||
JMP2r
|
||||
|
||||
(
|
||||
@|utils )
|
||||
|
||||
@<pstr> ( str* -- )
|
||||
LDAk #18 DEO
|
||||
INC2 LDAk ?<pstr>
|
||||
|
@ -116,4 +198,9 @@
|
|||
&end 09 "} 0a "} 0a $1
|
||||
&case 09 "case 20 $1
|
||||
&break "break; $1
|
||||
&return "return 20 "1; $1
|
||||
&uxn-wst-dat "uxn.wst.dat $1
|
||||
&uxn-wst-ptr "uxn.wst.ptr $1
|
||||
&uxn-rst-dat "uxn.rst.dat $1
|
||||
&uxn-rst-ptr "uxn.rst.ptr $1
|
||||
|
||||
|
|
Loading…
Reference in New Issue