1
0
mirror of https://github.com/hsoft/collapseos.git synced 2024-11-30 20:58:05 +11:00

boot: use 3 labels instead of 4

This commit is contained in:
Virgil Dupras 2020-04-15 16:13:10 -04:00
parent d2ec5e271c
commit 6884c5cbe3

View File

@ -190,7 +190,7 @@ BEGIN, ( inner )
LDA(DE), LDA(DE),
0x7f ANDn, ( remove IMMEDIATE flag ) 0x7f ANDn, ( remove IMMEDIATE flag )
C CPr, C CPr,
JRNZ, L4 FWR ( loopend ) JRNZ, L2 FWR ( loopend )
( match, let's compare the string then ) ( match, let's compare the string then )
DE DECss, ( Skip prev field. One less because we ) DE DECss, ( Skip prev field. One less because we )
DE DECss, ( pre-decrement ) DE DECss, ( pre-decrement )
@ -203,12 +203,12 @@ BEGIN, ( loop )
(HL) CPr, (HL) CPr,
JRNZ, L3 FWR ( loopend ) JRNZ, L3 FWR ( loopend )
DJNZ, AGAIN, ( loop ) DJNZ, AGAIN, ( loop )
L4 FSET L3 FSET ( loopend ) L2 FSET L3 FSET ( loopend )
( At this point, Z is set if we have a match. In all cases, ( At this point, Z is set if we have a match. In all cases,
we want to pop HL and DE ) we want to pop HL and DE )
DE POPqq, ( <-- lvl 2 ) DE POPqq, ( <-- lvl 2 )
HL POPqq, ( <-- lvl 1 ) HL POPqq, ( <-- lvl 1 )
JRZ, L4 FWR ( end, match? we're done! ) JRZ, L2 FWR ( end, match? we're done! )
( no match, go to prev and continue ) ( no match, go to prev and continue )
HL PUSHqq, ( --> lvl 1 ) HL PUSHqq, ( --> lvl 1 )
DE DECss, DE DECss,
@ -236,7 +236,7 @@ L4 FSET L3 FSET ( loopend )
L1 FSET ( fail ) L1 FSET ( fail )
A XORr, A XORr,
A INCr, A INCr,
L4 FSET ( end ) L2 FSET ( end )
HL POPqq, HL POPqq,
BC POPqq, BC POPqq,
RET, RET,
@ -277,7 +277,7 @@ PC ORG @ 0x1e + ! ( chkPS )
CNC RETcc, ( INITIAL_SP >= SP? good ) CNC RETcc, ( INITIAL_SP >= SP? good )
JR, L1 BWR ( abortUnderflow ) JR, L1 BWR ( abortUnderflow )
L3 BSET ( chkRS ) L2 BSET ( chkRS )
IX PUSHqq, HL POPqq, IX PUSHqq, HL POPqq,
DE RS_ADDR LDddnn, DE RS_ADDR LDddnn,
DE SUBHLss, DE SUBHLss,
@ -291,7 +291,7 @@ PC ORG @ 0x1b + ! ( next )
it by 2 before jumping. ) it by 2 before jumping. )
( Before we continue: are stacks within bounds? ) ( Before we continue: are stacks within bounds? )
0x1d CALLnn, ( chkPS ) 0x1d CALLnn, ( chkPS )
L3 @ CALLnn, ( chkRS ) L2 @ CALLnn, ( chkRS )
DE RAMSTART 0x06 + LDdd(nn), ( RAMSTART+0x06 == IP ) DE RAMSTART 0x06 + LDdd(nn), ( RAMSTART+0x06 == IP )
H D LDrr, H D LDrr,
L E LDrr, L E LDrr,