newlines for if/while

This commit is contained in:
zongor 2026-04-29 00:00:22 -07:00
parent 3847c63fc9
commit 86922ed86b
3 changed files with 8 additions and 76 deletions

View File

@ -709,7 +709,7 @@ uxn_emit_print()
void void
uxn_emit_if() uxn_emit_if()
{ {
printf("#03 JCN !{ "); printf("#03 JCN !{ \n");
} }
void void
@ -721,7 +721,7 @@ uxn_emit_patch_if(i32 local_ifs)
void void
uxn_emit_patch_if_done(i32 local_ifs) uxn_emit_patch_if_done(i32 local_ifs)
{ {
printf("&if_end.%d ", local_ifs); printf("&if_end.%d \n", local_ifs);
} }
@ -734,13 +734,13 @@ uxn_emit_while(i32 local_whiles)
void void
uxn_emit_while_postfix() uxn_emit_while_postfix()
{ {
printf("#03 JCN !{ "); printf("#03 JCN !{ \n");
} }
void void
uxn_emit_patch_while(i32 local_whiles) uxn_emit_patch_while(i32 local_whiles)
{ {
printf("!&while.%d } ", local_whiles); printf("!&while.%d } \n", local_whiles);
} }

View File

@ -1,8 +1,9 @@
|100 |100
!{ @i $2 } #0000 ;i STA2 !{ @i $2 } #0000 ;i STA2
&while.0 ;i LDA2 #000a LTH2 #03 JCN !{
&loop.0 ;i LDA2 #000a LTH2 #03 JCN !{ ;i LDA2 nat_to_str_ str/<print> ;i LDA2 nat_to_str_ str/<print>
;i LDA2 ;i LDA2 #0001 ADD2 ;i STA2 !&loop.0 } BRK ;i LDA2 #0001 ADD2 ;i STA2 !&while.0 }
BRK
@sext @sext
#80 ANDk EQU #ff MUL SWP JMP2r #80 ANDk EQU #ff MUL SWP JMP2r

View File

@ -1,69 +0,0 @@
|100
!{ @i $2 } #0000 ;i STA2
&while.0 ;i LDA2 #000a LTH2 #03 JCN !{ ;i LDA2 nat_to_str_ str/<print>
;i LDA2 #0001 ADD2 ;i STA2 !&while.0 } BRK
@sext
#80 ANDk EQU #ff MUL SWP JMP2r
@aalloc_ ( size* -- result* )
OVR2r LIT2r 0004 SUB2r STH2kr INC2 INC2 STA2
;mem_length_ LDA2 STH2kr STA2
;mem_length_ LDA2k STH2kr INC2 INC2 LDA2 ADD2 SWP2 STA2
;mem_ STH2kr LDA2 ADD2 !&return
#0000
&return
POP2r JMP2r
@amcpy_ ( length* from* -- result* )
OVR2r LIT2r 0008 SUB2r STH2kr #0006 ADD2 STA2
STH2kr #0004 ADD2 STA2
STH2kr #0004 ADD2 LDA2 aalloc_
STH2kr INC2 INC2 STA2
#0000 STH2kr STA2
&begin.1
STH2kr LDA2 STH2kr #0004 ADD2 LDA2 LTH2 #00 EQU ?&break.1
STH2kr #0006 ADD2 LDA2 STH2kr LDA2 ADD2 LDA sext
STH2kr INC2 INC2 LDA2 STH2kr LDA2 ADD2 STA
POP
&continue.1
STH2kr LDA2k INC2k ROT2 STA2
POP2 !&begin.1
&break.1
STH2kr INC2 INC2 LDA2 !&return
#0000
&return
POP2r JMP2r
@nat_to_str_ ( n* -- result* )
OVR2r LIT2r 000a SUB2r STH2kr #0008 ADD2 STA2
#0005 STH2kr STA2
&begin.1
STH2kr #0008 ADD2 LDA2 #000a OVR2 OVR2 DIV2 MUL2 SUB2 #0030 ADD2 STH2kr INC2 INC2 STH2kr LDA2k #0001 SUB2 SWP2 STA2k
POP2 ADD2 STA
POP STH2kr #0008 ADD2 LDA2k #000a DIV2 SWP2 STA2
&continue.1
#0000 STH2kr #0008 ADD2 LDA2 LTH2 ?&begin.1
&break.1
#0005 STH2kr LDA2 SUB2 STH2kr INC2 INC2 STH2kr LDA2 ADD2 amcpy_
!&return
#0000
&return
POP2r JMP2r
@str/<print> ( str* -- )
LDAk DUP ?{ POP POP2 JMP2r }
#18 DEO
INC2 !/<print>
@mem_length_ #0000
@mem_