mirror of
https://gitlab.com/camelot/kickc.git
synced 2024-09-08 17:54:40 +00:00
Implemented the rest of the comparison test. Fixed a double jump problem.
This commit is contained in:
parent
53d8afbb1d
commit
2084be92e0
@ -42,7 +42,7 @@ public class AsmFragmentManager {
|
|||||||
if(log.isVerboseFragmentLog()) {
|
if(log.isVerboseFragmentLog()) {
|
||||||
log.append("Unknown fragment " + signature.getSignature());
|
log.append("Unknown fragment " + signature.getSignature());
|
||||||
}
|
}
|
||||||
throw new UnknownFragmentException(signature.toString());
|
throw new UnknownFragmentException(signature.getSignature());
|
||||||
}
|
}
|
||||||
if(bestTemplate == null) {
|
if(bestTemplate == null) {
|
||||||
AsmFragmentTemplateSynthesizer synthesizer = new AsmFragmentTemplateSynthesizer(signature.getSignature(), log);
|
AsmFragmentTemplateSynthesizer synthesizer = new AsmFragmentTemplateSynthesizer(signature.getSignature(), log);
|
||||||
@ -52,7 +52,7 @@ public class AsmFragmentManager {
|
|||||||
log.append("Unknown fragment " + signature.toString());
|
log.append("Unknown fragment " + signature.toString());
|
||||||
}
|
}
|
||||||
bestFragmentCache.put(signature.getSignature(), UNKNOWN);
|
bestFragmentCache.put(signature.getSignature(), UNKNOWN);
|
||||||
throw new UnknownFragmentException(signature.toString());
|
throw new UnknownFragmentException(signature.getSignature());
|
||||||
}
|
}
|
||||||
double minScore = Double.MAX_VALUE;
|
double minScore = Double.MAX_VALUE;
|
||||||
double maxScore = Double.MIN_VALUE;
|
double maxScore = Double.MIN_VALUE;
|
||||||
@ -550,7 +550,7 @@ public class AsmFragmentManager {
|
|||||||
private String fragmentSignature;
|
private String fragmentSignature;
|
||||||
|
|
||||||
UnknownFragmentException(String signature) {
|
UnknownFragmentException(String signature) {
|
||||||
super("Fragment not found " + signature + ".asm");
|
super("Fragment not found " + signature );
|
||||||
this.fragmentSignature = signature;
|
this.fragmentSignature = signature;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
cmp {z1}
|
cmp {c1}
|
||||||
bcc {la1}
|
bcc {la1}
|
||||||
beq {la1}
|
beq {la1}
|
||||||
|
@ -0,0 +1,4 @@
|
|||||||
|
cmp {c1},y
|
||||||
|
beq !+
|
||||||
|
bcs {la1}
|
||||||
|
!:
|
@ -0,0 +1,3 @@
|
|||||||
|
cmp {c1},y
|
||||||
|
bcc {la1}
|
||||||
|
beq {la1}
|
@ -0,0 +1,2 @@
|
|||||||
|
cmp {c1},y
|
||||||
|
bcc {la1}
|
@ -0,0 +1,2 @@
|
|||||||
|
cmp {c1},y
|
||||||
|
bne {la1}
|
@ -62,7 +62,7 @@ public class Pass5DoubleJumpElimination extends Pass5AsmOptimization {
|
|||||||
AsmInstruction asmInstruction = (AsmInstruction) line;
|
AsmInstruction asmInstruction = (AsmInstruction) line;
|
||||||
if(asmInstruction.getType().isJump()) {
|
if(asmInstruction.getType().isJump()) {
|
||||||
String immediateJmpTarget = immediateJumps.get(currentScope + "::" + asmInstruction.getParameter());
|
String immediateJmpTarget = immediateJumps.get(currentScope + "::" + asmInstruction.getParameter());
|
||||||
if(immediateJmpTarget != null) {
|
if(immediateJmpTarget != null && !immediateJmpTarget.equals(asmInstruction.getParameter())) {
|
||||||
getLog().append("Skipping double jump to " + immediateJmpTarget + " in " + asmInstruction.toString());
|
getLog().append("Skipping double jump to " + immediateJmpTarget + " in " + asmInstruction.toString());
|
||||||
asmInstruction.setParameter(immediateJmpTarget);
|
asmInstruction.setParameter(immediateJmpTarget);
|
||||||
optimized = true;
|
optimized = true;
|
||||||
|
@ -1,10 +1,11 @@
|
|||||||
.pc = $801 "Basic"
|
.pc = $801 "Basic"
|
||||||
:BasicUpstart(main)
|
:BasicUpstart(main)
|
||||||
.pc = $80d "Program"
|
.pc = $80d "Program"
|
||||||
|
.label char_cursor = 9
|
||||||
.label line_cursor = 4
|
.label line_cursor = 4
|
||||||
.label char_cursor = 8
|
|
||||||
jsr main
|
jsr main
|
||||||
main: {
|
main: {
|
||||||
|
.label b = $c
|
||||||
.label a = 2
|
.label a = 2
|
||||||
.label i = 3
|
.label i = 3
|
||||||
jsr print_cls
|
jsr print_cls
|
||||||
@ -21,81 +22,384 @@ main: {
|
|||||||
lda #7
|
lda #7
|
||||||
sta a
|
sta a
|
||||||
b1:
|
b1:
|
||||||
lda #$ee
|
lda #$ce
|
||||||
sec
|
sec
|
||||||
sbc a
|
sbc a
|
||||||
tay
|
sta b
|
||||||
lda a
|
lda a
|
||||||
sty $ff
|
cmp b
|
||||||
cmp $ff
|
bcs b23
|
||||||
bcs b6
|
|
||||||
ldx #'+'
|
ldx #'+'
|
||||||
jmp b2
|
jmp b2
|
||||||
b6:
|
b23:
|
||||||
ldx #'-'
|
ldx #'-'
|
||||||
b2:
|
b2:
|
||||||
sty printu.b
|
lda b
|
||||||
lda #'<'
|
sta printu.b
|
||||||
|
lda #<op
|
||||||
sta printu.op
|
sta printu.op
|
||||||
|
lda #>op
|
||||||
|
sta printu.op+1
|
||||||
jsr printu
|
jsr printu
|
||||||
lda a
|
lda a
|
||||||
cmp #$87
|
cmp #$37
|
||||||
bcs b7
|
bcs b24
|
||||||
ldx #'+'
|
ldx #'+'
|
||||||
jmp b3
|
jmp b3
|
||||||
b7:
|
b24:
|
||||||
ldx #'-'
|
ldx #'-'
|
||||||
b3:
|
b3:
|
||||||
lda #$87
|
lda #$37
|
||||||
sta printu.b
|
sta printu.b
|
||||||
lda #'<'
|
lda #<op1
|
||||||
sta printu.op
|
sta printu.op
|
||||||
|
lda #>op1
|
||||||
|
sta printu.op+1
|
||||||
jsr printu
|
jsr printu
|
||||||
lda a
|
lda a
|
||||||
ldy i
|
ldy i
|
||||||
cmp cs,y
|
cmp cs,y
|
||||||
bcs b8
|
bcs b25
|
||||||
ldx #'+'
|
ldx #'+'
|
||||||
jmp b4
|
jmp b4
|
||||||
b8:
|
b25:
|
||||||
ldx #'-'
|
ldx #'-'
|
||||||
b4:
|
b4:
|
||||||
ldy i
|
ldy i
|
||||||
lda cs,y
|
lda cs,y
|
||||||
sta printu.b
|
sta printu.b
|
||||||
lda #'<'
|
lda #<op2
|
||||||
sta printu.op
|
sta printu.op
|
||||||
|
lda #>op2
|
||||||
|
sta printu.op+1
|
||||||
jsr printu
|
jsr printu
|
||||||
lda a
|
lda a
|
||||||
cmp a
|
cmp a
|
||||||
bcs b9
|
bcs b26
|
||||||
ldx #'+'
|
ldx #'+'
|
||||||
jmp b5
|
jmp b5
|
||||||
b9:
|
b26:
|
||||||
ldx #'-'
|
ldx #'-'
|
||||||
b5:
|
b5:
|
||||||
lda a
|
lda a
|
||||||
sta printu.b
|
sta printu.b
|
||||||
lda #'<'
|
lda #<op3
|
||||||
sta printu.op
|
sta printu.op
|
||||||
|
lda #>op3
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
jsr print_ln
|
||||||
|
lda b
|
||||||
|
cmp a
|
||||||
|
bcs b27
|
||||||
|
ldx #'+'
|
||||||
|
jmp b6
|
||||||
|
b27:
|
||||||
|
ldx #'-'
|
||||||
|
b6:
|
||||||
|
lda b
|
||||||
|
sta printu.b
|
||||||
|
lda line_cursor
|
||||||
|
sta char_cursor
|
||||||
|
lda line_cursor+1
|
||||||
|
sta char_cursor+1
|
||||||
|
lda #<op4
|
||||||
|
sta printu.op
|
||||||
|
lda #>op4
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
cmp #$37
|
||||||
|
bcc b28
|
||||||
|
beq b28
|
||||||
|
ldx #'+'
|
||||||
|
jmp b7
|
||||||
|
b28:
|
||||||
|
ldx #'-'
|
||||||
|
b7:
|
||||||
|
lda #$37
|
||||||
|
sta printu.b
|
||||||
|
lda #<op5
|
||||||
|
sta printu.op
|
||||||
|
lda #>op5
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
ldy i
|
||||||
|
cmp cs,y
|
||||||
|
bcc b29
|
||||||
|
beq b29
|
||||||
|
ldx #'+'
|
||||||
|
jmp b8
|
||||||
|
b29:
|
||||||
|
ldx #'-'
|
||||||
|
b8:
|
||||||
|
ldy i
|
||||||
|
lda cs,y
|
||||||
|
sta printu.b
|
||||||
|
lda #<op6
|
||||||
|
sta printu.op
|
||||||
|
lda #>op6
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
cmp a
|
||||||
|
bcs b30
|
||||||
|
ldx #'+'
|
||||||
|
jmp b9
|
||||||
|
b30:
|
||||||
|
ldx #'-'
|
||||||
|
b9:
|
||||||
|
lda a
|
||||||
|
sta printu.b
|
||||||
|
lda #<op7
|
||||||
|
sta printu.op
|
||||||
|
lda #>op7
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
jsr print_ln
|
||||||
|
lda b
|
||||||
|
cmp a
|
||||||
|
bcc b31
|
||||||
|
ldx #'+'
|
||||||
|
jmp b10
|
||||||
|
b31:
|
||||||
|
ldx #'-'
|
||||||
|
b10:
|
||||||
|
lda b
|
||||||
|
sta printu.b
|
||||||
|
lda line_cursor
|
||||||
|
sta char_cursor
|
||||||
|
lda line_cursor+1
|
||||||
|
sta char_cursor+1
|
||||||
|
lda #<op8
|
||||||
|
sta printu.op
|
||||||
|
lda #>op8
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
cmp #$37
|
||||||
|
beq !+
|
||||||
|
bcs b32
|
||||||
|
!:
|
||||||
|
ldx #'+'
|
||||||
|
jmp b11
|
||||||
|
b32:
|
||||||
|
ldx #'-'
|
||||||
|
b11:
|
||||||
|
lda #$37
|
||||||
|
sta printu.b
|
||||||
|
lda #<op9
|
||||||
|
sta printu.op
|
||||||
|
lda #>op9
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
ldy i
|
||||||
|
cmp cs,y
|
||||||
|
beq !+
|
||||||
|
bcs b33
|
||||||
|
!:
|
||||||
|
ldx #'+'
|
||||||
|
jmp b12
|
||||||
|
b33:
|
||||||
|
ldx #'-'
|
||||||
|
b12:
|
||||||
|
ldy i
|
||||||
|
lda cs,y
|
||||||
|
sta printu.b
|
||||||
|
lda #<op10
|
||||||
|
sta printu.op
|
||||||
|
lda #>op10
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
cmp a
|
||||||
|
bcc b34
|
||||||
|
ldx #'+'
|
||||||
|
jmp b13
|
||||||
|
b34:
|
||||||
|
ldx #'-'
|
||||||
|
b13:
|
||||||
|
lda a
|
||||||
|
sta printu.b
|
||||||
|
lda #<op11
|
||||||
|
sta printu.op
|
||||||
|
lda #>op11
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
jsr print_ln
|
||||||
|
lda a
|
||||||
|
cmp b
|
||||||
|
bcc b35
|
||||||
|
ldx #'+'
|
||||||
|
jmp b14
|
||||||
|
b35:
|
||||||
|
ldx #'-'
|
||||||
|
b14:
|
||||||
|
lda b
|
||||||
|
sta printu.b
|
||||||
|
lda line_cursor
|
||||||
|
sta char_cursor
|
||||||
|
lda line_cursor+1
|
||||||
|
sta char_cursor+1
|
||||||
|
lda #<op12
|
||||||
|
sta printu.op
|
||||||
|
lda #>op12
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
cmp #$37
|
||||||
|
bcc b36
|
||||||
|
ldx #'+'
|
||||||
|
jmp b15
|
||||||
|
b36:
|
||||||
|
ldx #'-'
|
||||||
|
b15:
|
||||||
|
lda #$37
|
||||||
|
sta printu.b
|
||||||
|
lda #<op13
|
||||||
|
sta printu.op
|
||||||
|
lda #>op13
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
ldy i
|
||||||
|
cmp cs,y
|
||||||
|
bcc b37
|
||||||
|
ldx #'+'
|
||||||
|
jmp b16
|
||||||
|
b37:
|
||||||
|
ldx #'-'
|
||||||
|
b16:
|
||||||
|
ldy i
|
||||||
|
lda cs,y
|
||||||
|
sta printu.b
|
||||||
|
lda #<op14
|
||||||
|
sta printu.op
|
||||||
|
lda #>op14
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
cmp a
|
||||||
|
bcc b38
|
||||||
|
ldx #'+'
|
||||||
|
jmp b17
|
||||||
|
b38:
|
||||||
|
ldx #'-'
|
||||||
|
b17:
|
||||||
|
lda a
|
||||||
|
sta printu.b
|
||||||
|
lda #<op15
|
||||||
|
sta printu.op
|
||||||
|
lda #>op15
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
jsr print_ln
|
||||||
|
lda a
|
||||||
|
cmp b
|
||||||
|
bne b39
|
||||||
|
ldx #'+'
|
||||||
|
jmp b18
|
||||||
|
b39:
|
||||||
|
ldx #'-'
|
||||||
|
b18:
|
||||||
|
lda b
|
||||||
|
sta printu.b
|
||||||
|
lda line_cursor
|
||||||
|
sta char_cursor
|
||||||
|
lda line_cursor+1
|
||||||
|
sta char_cursor+1
|
||||||
|
lda #<op16
|
||||||
|
sta printu.op
|
||||||
|
lda #>op16
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
cmp #$37
|
||||||
|
bne b40
|
||||||
|
ldx #'+'
|
||||||
|
jmp b19
|
||||||
|
b40:
|
||||||
|
ldx #'-'
|
||||||
|
b19:
|
||||||
|
lda #$37
|
||||||
|
sta printu.b
|
||||||
|
lda #<op17
|
||||||
|
sta printu.op
|
||||||
|
lda #>op17
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
ldy i
|
||||||
|
cmp cs,y
|
||||||
|
bne b41
|
||||||
|
ldx #'+'
|
||||||
|
jmp b20
|
||||||
|
b41:
|
||||||
|
ldx #'-'
|
||||||
|
b20:
|
||||||
|
ldy i
|
||||||
|
lda cs,y
|
||||||
|
sta printu.b
|
||||||
|
lda #<op18
|
||||||
|
sta printu.op
|
||||||
|
lda #>op18
|
||||||
|
sta printu.op+1
|
||||||
|
jsr printu
|
||||||
|
lda a
|
||||||
|
cmp a
|
||||||
|
bne b42
|
||||||
|
ldx #'+'
|
||||||
|
jmp b21
|
||||||
|
b42:
|
||||||
|
ldx #'-'
|
||||||
|
b21:
|
||||||
|
lda a
|
||||||
|
sta printu.b
|
||||||
|
lda #<op19
|
||||||
|
sta printu.op
|
||||||
|
lda #>op19
|
||||||
|
sta printu.op+1
|
||||||
jsr printu
|
jsr printu
|
||||||
jsr print_ln
|
jsr print_ln
|
||||||
lda a
|
lda a
|
||||||
clc
|
clc
|
||||||
adc #$10
|
adc #$30
|
||||||
sta a
|
sta a
|
||||||
inc i
|
inc i
|
||||||
lda i
|
lda i
|
||||||
cmp #$10
|
cmp #5
|
||||||
bne b17
|
bne b71
|
||||||
rts
|
b22:
|
||||||
b17:
|
jmp b22
|
||||||
|
b71:
|
||||||
lda line_cursor
|
lda line_cursor
|
||||||
sta char_cursor
|
sta char_cursor
|
||||||
lda line_cursor+1
|
lda line_cursor+1
|
||||||
sta char_cursor+1
|
sta char_cursor+1
|
||||||
jmp b1
|
jmp b1
|
||||||
cs: .byte 7, $f7, $17, $e7, $27, $d7, $37, $c7, $47, $b7, $57, $a7, $67, $97, $77, $87
|
op: .text "< @"
|
||||||
|
op1: .text "< @"
|
||||||
|
op2: .text "< @"
|
||||||
|
op3: .text "< @"
|
||||||
|
op4: .text "> @"
|
||||||
|
op5: .text "> @"
|
||||||
|
op6: .text "> @"
|
||||||
|
op7: .text "> @"
|
||||||
|
op8: .text "<=@"
|
||||||
|
op9: .text "<=@"
|
||||||
|
op10: .text "<=@"
|
||||||
|
op11: .text "<=@"
|
||||||
|
op12: .text ">=@"
|
||||||
|
op13: .text ">=@"
|
||||||
|
op14: .text ">=@"
|
||||||
|
op15: .text ">=@"
|
||||||
|
op16: .text "==@"
|
||||||
|
op17: .text "==@"
|
||||||
|
op18: .text "==@"
|
||||||
|
op19: .text "==@"
|
||||||
|
cs: .byte 7, $c7, $37, $97, $67
|
||||||
}
|
}
|
||||||
print_ln: {
|
print_ln: {
|
||||||
b1:
|
b1:
|
||||||
@ -118,15 +422,14 @@ print_ln: {
|
|||||||
}
|
}
|
||||||
printu: {
|
printu: {
|
||||||
.label a = 2
|
.label a = 2
|
||||||
.label b = 7
|
.label b = 8
|
||||||
.label op = 6
|
.label op = 6
|
||||||
lda #' '
|
lda #' '
|
||||||
jsr print_char
|
jsr print_char
|
||||||
lda a
|
lda a
|
||||||
sta print_byte.b
|
sta print_byte.b
|
||||||
jsr print_byte
|
jsr print_byte
|
||||||
lda op
|
jsr print_str
|
||||||
jsr print_char
|
|
||||||
lda b
|
lda b
|
||||||
sta print_byte.b
|
sta print_byte.b
|
||||||
jsr print_byte
|
jsr print_byte
|
||||||
@ -146,7 +449,7 @@ print_char: {
|
|||||||
rts
|
rts
|
||||||
}
|
}
|
||||||
print_byte: {
|
print_byte: {
|
||||||
.label b = $a
|
.label b = $b
|
||||||
lda b
|
lda b
|
||||||
lsr
|
lsr
|
||||||
lsr
|
lsr
|
||||||
@ -163,6 +466,28 @@ print_byte: {
|
|||||||
rts
|
rts
|
||||||
hextab: .text "0123456789abcdef"
|
hextab: .text "0123456789abcdef"
|
||||||
}
|
}
|
||||||
|
print_str: {
|
||||||
|
.label str = 6
|
||||||
|
b1:
|
||||||
|
ldy #0
|
||||||
|
lda (str),y
|
||||||
|
cmp #'@'
|
||||||
|
bne b2
|
||||||
|
rts
|
||||||
|
b2:
|
||||||
|
ldy #0
|
||||||
|
lda (str),y
|
||||||
|
sta (char_cursor),y
|
||||||
|
inc char_cursor
|
||||||
|
bne !+
|
||||||
|
inc char_cursor+1
|
||||||
|
!:
|
||||||
|
inc str
|
||||||
|
bne !+
|
||||||
|
inc str+1
|
||||||
|
!:
|
||||||
|
jmp b1
|
||||||
|
}
|
||||||
print_cls: {
|
print_cls: {
|
||||||
.label sc = 4
|
.label sc = 4
|
||||||
lda #<$400
|
lda #<$400
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -2,56 +2,153 @@
|
|||||||
(label) @begin
|
(label) @begin
|
||||||
(label) @end
|
(label) @end
|
||||||
(byte*) char_cursor
|
(byte*) char_cursor
|
||||||
(byte*) char_cursor#27 char_cursor zp ZP_WORD:8 8.0
|
(byte*) char_cursor#1 char_cursor zp ZP_WORD:9 11.0
|
||||||
(byte*) char_cursor#28 char_cursor zp ZP_WORD:8 3.041666666666665
|
(byte*) char_cursor#114 char_cursor zp ZP_WORD:9 2.75
|
||||||
(byte*) char_cursor#45 char_cursor zp ZP_WORD:8 46.0
|
(byte*~) char_cursor#137 char_cursor zp ZP_WORD:9 22.0
|
||||||
(byte*) char_cursor#46 char_cursor zp ZP_WORD:8 2.75
|
(byte*~) char_cursor#138 char_cursor zp ZP_WORD:9 22.0
|
||||||
(byte*~) char_cursor#58 char_cursor zp ZP_WORD:8 22.0
|
(byte*~) char_cursor#142 char_cursor zp ZP_WORD:9 22.0
|
||||||
|
(byte*~) char_cursor#146 char_cursor zp ZP_WORD:9 22.0
|
||||||
|
(byte*~) char_cursor#154 char_cursor zp ZP_WORD:9 22.0
|
||||||
|
(byte*) char_cursor#2 char_cursor zp ZP_WORD:9 6.166666666666666
|
||||||
|
(byte*) char_cursor#51 char_cursor zp ZP_WORD:9 7.0
|
||||||
|
(byte*) char_cursor#52 char_cursor zp ZP_WORD:9 2.106060606060605
|
||||||
|
(byte*) char_cursor#89 char_cursor zp ZP_WORD:9 2.0
|
||||||
|
(byte*) char_cursor#90 char_cursor zp ZP_WORD:9 222.0
|
||||||
(byte*) line_cursor
|
(byte*) line_cursor
|
||||||
(byte*) line_cursor#1 line_cursor zp ZP_WORD:4 40.625
|
(byte*) line_cursor#1 line_cursor zp ZP_WORD:4 3.2265625
|
||||||
(byte*) line_cursor#13 line_cursor zp ZP_WORD:4 0.41935483870967744
|
(byte*) line_cursor#10 line_cursor zp ZP_WORD:4 204.0
|
||||||
(byte*) line_cursor#6 line_cursor zp ZP_WORD:4 204.0
|
(byte*) line_cursor#20 line_cursor zp ZP_WORD:4 57.0
|
||||||
|
(byte*) line_cursor#21 line_cursor zp ZP_WORD:4 0.7333333333333333
|
||||||
(void()) main()
|
(void()) main()
|
||||||
(label) main::@1
|
(label) main::@1
|
||||||
|
(label) main::@10
|
||||||
|
(label) main::@11
|
||||||
(label) main::@12
|
(label) main::@12
|
||||||
(label) main::@13
|
(label) main::@13
|
||||||
(label) main::@14
|
(label) main::@14
|
||||||
(label) main::@15
|
(label) main::@15
|
||||||
(label) main::@16
|
(label) main::@16
|
||||||
(label) main::@17
|
(label) main::@17
|
||||||
|
(label) main::@18
|
||||||
|
(label) main::@19
|
||||||
(label) main::@2
|
(label) main::@2
|
||||||
|
(label) main::@20
|
||||||
|
(label) main::@21
|
||||||
|
(label) main::@22
|
||||||
|
(label) main::@23
|
||||||
|
(label) main::@24
|
||||||
|
(label) main::@25
|
||||||
|
(label) main::@26
|
||||||
|
(label) main::@27
|
||||||
|
(label) main::@28
|
||||||
|
(label) main::@29
|
||||||
(label) main::@3
|
(label) main::@3
|
||||||
|
(label) main::@30
|
||||||
|
(label) main::@31
|
||||||
|
(label) main::@32
|
||||||
|
(label) main::@33
|
||||||
|
(label) main::@34
|
||||||
|
(label) main::@35
|
||||||
|
(label) main::@36
|
||||||
|
(label) main::@37
|
||||||
|
(label) main::@38
|
||||||
|
(label) main::@39
|
||||||
(label) main::@4
|
(label) main::@4
|
||||||
|
(label) main::@40
|
||||||
|
(label) main::@41
|
||||||
|
(label) main::@42
|
||||||
|
(label) main::@46
|
||||||
|
(label) main::@47
|
||||||
|
(label) main::@48
|
||||||
|
(label) main::@49
|
||||||
(label) main::@5
|
(label) main::@5
|
||||||
|
(label) main::@50
|
||||||
|
(label) main::@51
|
||||||
|
(label) main::@52
|
||||||
|
(label) main::@53
|
||||||
|
(label) main::@54
|
||||||
|
(label) main::@55
|
||||||
|
(label) main::@56
|
||||||
|
(label) main::@57
|
||||||
|
(label) main::@58
|
||||||
|
(label) main::@59
|
||||||
(label) main::@6
|
(label) main::@6
|
||||||
|
(label) main::@60
|
||||||
|
(label) main::@61
|
||||||
|
(label) main::@62
|
||||||
|
(label) main::@63
|
||||||
|
(label) main::@64
|
||||||
|
(label) main::@65
|
||||||
|
(label) main::@66
|
||||||
|
(label) main::@67
|
||||||
|
(label) main::@68
|
||||||
|
(label) main::@69
|
||||||
(label) main::@7
|
(label) main::@7
|
||||||
|
(label) main::@70
|
||||||
|
(label) main::@71
|
||||||
(label) main::@8
|
(label) main::@8
|
||||||
(label) main::@9
|
(label) main::@9
|
||||||
(label) main::@return
|
(label) main::@return
|
||||||
(byte) main::a
|
(byte) main::a
|
||||||
(byte) main::a#1 a zp ZP_BYTE:2 5.5
|
(byte) main::a#1 a zp ZP_BYTE:2 5.5
|
||||||
(byte) main::a#10 a zp ZP_BYTE:2 4.612903225806452
|
(byte) main::a#10 a zp ZP_BYTE:2 3.860927152317884
|
||||||
(byte) main::b
|
(byte) main::b
|
||||||
(byte) main::b#0 reg byte y 6.6000000000000005
|
(byte) main::b#0 b zp ZP_BYTE:12 0.9758064516129035
|
||||||
(byte[16]) main::cs
|
(byte[5]) main::cs
|
||||||
(const byte[16]) main::cs#0 cs = { (byte/signed byte/word/signed word) 7, (byte/word/signed word) 247, (byte/signed byte/word/signed word) 23, (byte/word/signed word) 231, (byte/signed byte/word/signed word) 39, (byte/word/signed word) 215, (byte/signed byte/word/signed word) 55, (byte/word/signed word) 199, (byte/signed byte/word/signed word) 71, (byte/word/signed word) 183, (byte/signed byte/word/signed word) 87, (byte/word/signed word) 167, (byte/signed byte/word/signed word) 103, (byte/word/signed word) 151, (byte/signed byte/word/signed word) 119, (byte/word/signed word) 135 }
|
(const byte[5]) main::cs#0 cs = { (byte/signed byte/word/signed word) 7, (byte/word/signed word) 199, (byte/signed byte/word/signed word) 55, (byte/word/signed word) 151, (byte/signed byte/word/signed word) 103 }
|
||||||
(byte) main::i
|
(byte) main::i
|
||||||
(byte) main::i#1 i zp ZP_BYTE:3 11.0
|
(byte) main::i#1 i zp ZP_BYTE:3 11.0
|
||||||
(byte) main::i#10 i zp ZP_BYTE:3 1.375
|
(byte) main::i#10 i zp ZP_BYTE:3 0.8684210526315792
|
||||||
|
(const string) main::op op = (string) "< @"
|
||||||
|
(const string) main::op1 op1 = (string) "< @"
|
||||||
|
(const string) main::op10 op10 = (string) "<=@"
|
||||||
|
(const string) main::op11 op11 = (string) "<=@"
|
||||||
|
(const string) main::op12 op12 = (string) ">=@"
|
||||||
|
(const string) main::op13 op13 = (string) ">=@"
|
||||||
|
(const string) main::op14 op14 = (string) ">=@"
|
||||||
|
(const string) main::op15 op15 = (string) ">=@"
|
||||||
|
(const string) main::op16 op16 = (string) "==@"
|
||||||
|
(const string) main::op17 op17 = (string) "==@"
|
||||||
|
(const string) main::op18 op18 = (string) "==@"
|
||||||
|
(const string) main::op19 op19 = (string) "==@"
|
||||||
|
(const string) main::op2 op2 = (string) "< @"
|
||||||
|
(const string) main::op3 op3 = (string) "< @"
|
||||||
|
(const string) main::op4 op4 = (string) "> @"
|
||||||
|
(const string) main::op5 op5 = (string) "> @"
|
||||||
|
(const string) main::op6 op6 = (string) "> @"
|
||||||
|
(const string) main::op7 op7 = (string) "> @"
|
||||||
|
(const string) main::op8 op8 = (string) "<=@"
|
||||||
|
(const string) main::op9 op9 = (string) "<=@"
|
||||||
(byte) main::r
|
(byte) main::r
|
||||||
(byte) main::r#10 reg byte x 3.6666666666666665
|
(byte) main::r#40 reg byte x 3.6666666666666665
|
||||||
(byte) main::r#11 reg byte x 3.6666666666666665
|
(byte) main::r#41 reg byte x 5.5
|
||||||
(byte) main::r#8 reg byte x 3.6666666666666665
|
(byte) main::r#42 reg byte x 3.6666666666666665
|
||||||
(byte) main::r#9 reg byte x 5.5
|
(byte) main::r#43 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#44 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#45 reg byte x 5.5
|
||||||
|
(byte) main::r#46 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#47 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#48 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#49 reg byte x 5.5
|
||||||
|
(byte) main::r#50 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#51 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#52 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#53 reg byte x 5.5
|
||||||
|
(byte) main::r#54 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#55 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#56 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#57 reg byte x 5.5
|
||||||
|
(byte) main::r#58 reg byte x 3.6666666666666665
|
||||||
|
(byte) main::r#59 reg byte x 3.6666666666666665
|
||||||
(void()) print_byte((byte) print_byte::b)
|
(void()) print_byte((byte) print_byte::b)
|
||||||
(byte~) print_byte::$0 reg byte y 4.0
|
(byte~) print_byte::$0 reg byte y 4.0
|
||||||
(byte~) print_byte::$2 reg byte y 4.0
|
(byte~) print_byte::$2 reg byte y 4.0
|
||||||
(label) print_byte::@1
|
(label) print_byte::@1
|
||||||
(label) print_byte::@return
|
(label) print_byte::@return
|
||||||
(byte) print_byte::b
|
(byte) print_byte::b
|
||||||
(byte) print_byte::b#0 b zp ZP_BYTE:10 4.0
|
(byte) print_byte::b#0 b zp ZP_BYTE:11 4.0
|
||||||
(byte) print_byte::b#1 b zp ZP_BYTE:10 4.0
|
(byte) print_byte::b#1 b zp ZP_BYTE:11 4.0
|
||||||
(byte) print_byte::b#2 b zp ZP_BYTE:10 2.0
|
(byte) print_byte::b#2 b zp ZP_BYTE:11 2.0
|
||||||
(byte[]) print_byte::hextab
|
(byte[]) print_byte::hextab
|
||||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||||
(void()) print_char((byte) print_char::ch)
|
(void()) print_char((byte) print_char::ch)
|
||||||
@ -59,9 +156,8 @@
|
|||||||
(byte) print_char::ch
|
(byte) print_char::ch
|
||||||
(byte) print_char::ch#0 reg byte a 4.0
|
(byte) print_char::ch#0 reg byte a 4.0
|
||||||
(byte) print_char::ch#1 reg byte a 4.0
|
(byte) print_char::ch#1 reg byte a 4.0
|
||||||
(byte) print_char::ch#3 reg byte a 4.0
|
(byte) print_char::ch#4 reg byte a 4.0
|
||||||
(byte) print_char::ch#5 reg byte a 4.0
|
(byte) print_char::ch#5 reg byte a 8.0
|
||||||
(byte) print_char::ch#6 reg byte a 10.0
|
|
||||||
(void()) print_cls()
|
(void()) print_cls()
|
||||||
(label) print_cls::@1
|
(label) print_cls::@1
|
||||||
(label) print_cls::@return
|
(label) print_cls::@return
|
||||||
@ -71,7 +167,15 @@
|
|||||||
(void()) print_ln()
|
(void()) print_ln()
|
||||||
(label) print_ln::@1
|
(label) print_ln::@1
|
||||||
(label) print_ln::@return
|
(label) print_ln::@return
|
||||||
(void()) printu((byte) printu::a , (byte) printu::op , (byte) printu::b , (byte) printu::res)
|
(void()) print_str((byte*) print_str::str)
|
||||||
|
(label) print_str::@1
|
||||||
|
(label) print_str::@2
|
||||||
|
(label) print_str::@return
|
||||||
|
(byte*) print_str::str
|
||||||
|
(byte*) print_str::str#0 str zp ZP_WORD:6 22.0
|
||||||
|
(byte*) print_str::str#1 str zp ZP_WORD:6 2.0
|
||||||
|
(byte*) print_str::str#2 str zp ZP_WORD:6 11.5
|
||||||
|
(void()) printu((byte) printu::a , (byte[]) printu::op , (byte) printu::b , (byte) printu::res)
|
||||||
(label) printu::@1
|
(label) printu::@1
|
||||||
(label) printu::@2
|
(label) printu::@2
|
||||||
(label) printu::@3
|
(label) printu::@3
|
||||||
@ -81,36 +185,96 @@
|
|||||||
(byte) printu::a
|
(byte) printu::a
|
||||||
(byte) printu::a#0 a zp ZP_BYTE:2 7.333333333333333
|
(byte) printu::a#0 a zp ZP_BYTE:2 7.333333333333333
|
||||||
(byte) printu::a#1 a zp ZP_BYTE:2 11.0
|
(byte) printu::a#1 a zp ZP_BYTE:2 11.0
|
||||||
|
(byte) printu::a#10 a zp ZP_BYTE:2 7.333333333333333
|
||||||
|
(byte) printu::a#11 a zp ZP_BYTE:2 7.333333333333333
|
||||||
|
(byte) printu::a#12 a zp ZP_BYTE:2 5.5
|
||||||
|
(byte) printu::a#13 a zp ZP_BYTE:2 11.0
|
||||||
|
(byte) printu::a#14 a zp ZP_BYTE:2 7.333333333333333
|
||||||
|
(byte) printu::a#15 a zp ZP_BYTE:2 7.333333333333333
|
||||||
|
(byte) printu::a#16 a zp ZP_BYTE:2 5.5
|
||||||
|
(byte) printu::a#17 a zp ZP_BYTE:2 11.0
|
||||||
|
(byte) printu::a#18 a zp ZP_BYTE:2 7.333333333333333
|
||||||
|
(byte) printu::a#19 a zp ZP_BYTE:2 7.333333333333333
|
||||||
(byte) printu::a#2 a zp ZP_BYTE:2 7.333333333333333
|
(byte) printu::a#2 a zp ZP_BYTE:2 7.333333333333333
|
||||||
|
(byte) printu::a#20 a zp ZP_BYTE:2 111.0
|
||||||
(byte) printu::a#3 a zp ZP_BYTE:2 7.333333333333333
|
(byte) printu::a#3 a zp ZP_BYTE:2 7.333333333333333
|
||||||
(byte) printu::a#4 a zp ZP_BYTE:2 23.0
|
(byte) printu::a#4 a zp ZP_BYTE:2 5.5
|
||||||
|
(byte) printu::a#5 a zp ZP_BYTE:2 11.0
|
||||||
|
(byte) printu::a#6 a zp ZP_BYTE:2 7.333333333333333
|
||||||
|
(byte) printu::a#7 a zp ZP_BYTE:2 7.333333333333333
|
||||||
|
(byte) printu::a#8 a zp ZP_BYTE:2 5.5
|
||||||
|
(byte) printu::a#9 a zp ZP_BYTE:2 11.0
|
||||||
(byte) printu::b
|
(byte) printu::b
|
||||||
(byte) printu::b#0 b zp ZP_BYTE:7 11.0
|
(byte) printu::b#0 b zp ZP_BYTE:8 11.0
|
||||||
(byte) printu::b#2 b zp ZP_BYTE:7 11.0
|
(byte) printu::b#10 b zp ZP_BYTE:8 11.0
|
||||||
(byte) printu::b#3 b zp ZP_BYTE:7 11.0
|
(byte) printu::b#11 b zp ZP_BYTE:8 11.0
|
||||||
(byte) printu::b#4 b zp ZP_BYTE:7 5.833333333333333
|
(byte) printu::b#12 b zp ZP_BYTE:8 7.333333333333333
|
||||||
(byte) printu::op
|
(byte) printu::b#14 b zp ZP_BYTE:8 11.0
|
||||||
(byte) printu::op#4 op zp ZP_BYTE:6 0.5
|
(byte) printu::b#15 b zp ZP_BYTE:8 11.0
|
||||||
|
(byte) printu::b#16 b zp ZP_BYTE:8 7.333333333333333
|
||||||
|
(byte) printu::b#18 b zp ZP_BYTE:8 11.0
|
||||||
|
(byte) printu::b#19 b zp ZP_BYTE:8 11.0
|
||||||
|
(byte) printu::b#2 b zp ZP_BYTE:8 11.0
|
||||||
|
(byte) printu::b#20 b zp ZP_BYTE:8 27.833333333333325
|
||||||
|
(byte) printu::b#3 b zp ZP_BYTE:8 11.0
|
||||||
|
(byte) printu::b#4 b zp ZP_BYTE:8 7.333333333333333
|
||||||
|
(byte) printu::b#6 b zp ZP_BYTE:8 11.0
|
||||||
|
(byte) printu::b#7 b zp ZP_BYTE:8 11.0
|
||||||
|
(byte) printu::b#8 b zp ZP_BYTE:8 7.333333333333333
|
||||||
|
(byte[]) printu::op
|
||||||
|
(byte[]) printu::op#20 op zp ZP_WORD:6 0.5
|
||||||
(byte) printu::res
|
(byte) printu::res
|
||||||
(byte) printu::res#0 reg byte x 22.0
|
(byte) printu::res#0 reg byte x 22.0
|
||||||
(byte) printu::res#1 reg byte x 22.0
|
(byte) printu::res#1 reg byte x 22.0
|
||||||
|
(byte) printu::res#10 reg byte x 22.0
|
||||||
|
(byte) printu::res#11 reg byte x 22.0
|
||||||
|
(byte) printu::res#12 reg byte x 11.0
|
||||||
|
(byte) printu::res#13 reg byte x 22.0
|
||||||
|
(byte) printu::res#14 reg byte x 22.0
|
||||||
|
(byte) printu::res#15 reg byte x 22.0
|
||||||
|
(byte) printu::res#16 reg byte x 11.0
|
||||||
|
(byte) printu::res#17 reg byte x 22.0
|
||||||
|
(byte) printu::res#18 reg byte x 22.0
|
||||||
|
(byte) printu::res#19 reg byte x 22.0
|
||||||
(byte) printu::res#2 reg byte x 22.0
|
(byte) printu::res#2 reg byte x 22.0
|
||||||
|
(byte) printu::res#20 reg byte x 22.200000000000003
|
||||||
(byte) printu::res#3 reg byte x 22.0
|
(byte) printu::res#3 reg byte x 22.0
|
||||||
(byte) printu::res#4 reg byte x 4.6000000000000005
|
(byte) printu::res#4 reg byte x 11.0
|
||||||
|
(byte) printu::res#5 reg byte x 22.0
|
||||||
|
(byte) printu::res#6 reg byte x 22.0
|
||||||
|
(byte) printu::res#7 reg byte x 22.0
|
||||||
|
(byte) printu::res#8 reg byte x 11.0
|
||||||
|
(byte) printu::res#9 reg byte x 22.0
|
||||||
|
|
||||||
zp ZP_BYTE:2 [ main::a#10 main::a#1 printu::a#4 printu::a#0 printu::a#1 printu::a#2 printu::a#3 ]
|
zp ZP_BYTE:2 [ main::a#10 main::a#1 printu::a#20 printu::a#8 printu::a#9 printu::a#10 printu::a#11 printu::a#12 printu::a#13 printu::a#14 printu::a#15 printu::a#16 printu::a#17 printu::a#0 printu::a#18 printu::a#19 printu::a#1 printu::a#2 printu::a#3 printu::a#4 printu::a#5 printu::a#6 printu::a#7 ]
|
||||||
zp ZP_BYTE:3 [ main::i#10 main::i#1 ]
|
zp ZP_BYTE:3 [ main::i#10 main::i#1 ]
|
||||||
reg byte x [ main::r#8 ]
|
reg byte x [ main::r#40 ]
|
||||||
reg byte x [ main::r#9 ]
|
reg byte x [ main::r#41 ]
|
||||||
reg byte x [ main::r#10 ]
|
reg byte x [ main::r#42 ]
|
||||||
reg byte x [ main::r#11 ]
|
reg byte x [ main::r#43 ]
|
||||||
zp ZP_WORD:4 [ line_cursor#6 line_cursor#13 line_cursor#1 print_cls::sc#2 print_cls::sc#1 ]
|
reg byte x [ main::r#44 ]
|
||||||
zp ZP_BYTE:6 [ printu::op#4 ]
|
reg byte x [ main::r#45 ]
|
||||||
zp ZP_BYTE:7 [ printu::b#4 printu::b#0 printu::b#2 printu::b#3 ]
|
reg byte x [ main::r#46 ]
|
||||||
reg byte x [ printu::res#4 printu::res#0 printu::res#1 printu::res#2 printu::res#3 ]
|
reg byte x [ main::r#47 ]
|
||||||
reg byte a [ print_char::ch#6 print_char::ch#0 print_char::ch#1 print_char::ch#3 print_char::ch#5 ]
|
reg byte x [ main::r#48 ]
|
||||||
zp ZP_WORD:8 [ char_cursor#27 char_cursor#45 char_cursor#46 char_cursor#58 char_cursor#28 ]
|
reg byte x [ main::r#49 ]
|
||||||
zp ZP_BYTE:10 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
reg byte x [ main::r#50 ]
|
||||||
reg byte y [ main::b#0 ]
|
reg byte x [ main::r#51 ]
|
||||||
|
reg byte x [ main::r#52 ]
|
||||||
|
reg byte x [ main::r#53 ]
|
||||||
|
reg byte x [ main::r#54 ]
|
||||||
|
reg byte x [ main::r#55 ]
|
||||||
|
reg byte x [ main::r#56 ]
|
||||||
|
reg byte x [ main::r#57 ]
|
||||||
|
reg byte x [ main::r#58 ]
|
||||||
|
reg byte x [ main::r#59 ]
|
||||||
|
zp ZP_WORD:4 [ line_cursor#10 line_cursor#20 line_cursor#21 line_cursor#1 print_cls::sc#2 print_cls::sc#1 ]
|
||||||
|
zp ZP_WORD:6 [ printu::op#20 print_str::str#2 print_str::str#1 print_str::str#0 ]
|
||||||
|
zp ZP_BYTE:8 [ printu::b#20 printu::b#8 printu::b#10 printu::b#11 printu::b#12 printu::b#14 printu::b#15 printu::b#16 printu::b#0 printu::b#18 printu::b#19 printu::b#2 printu::b#3 printu::b#4 printu::b#6 printu::b#7 ]
|
||||||
|
reg byte x [ printu::res#20 printu::res#8 printu::res#9 printu::res#10 printu::res#11 printu::res#12 printu::res#13 printu::res#14 printu::res#15 printu::res#16 printu::res#17 printu::res#0 printu::res#18 printu::res#19 printu::res#1 printu::res#2 printu::res#3 printu::res#4 printu::res#5 printu::res#6 printu::res#7 ]
|
||||||
|
reg byte a [ print_char::ch#5 print_char::ch#0 print_char::ch#1 print_char::ch#4 ]
|
||||||
|
zp ZP_WORD:9 [ char_cursor#51 char_cursor#89 char_cursor#90 char_cursor#138 char_cursor#52 char_cursor#142 char_cursor#146 char_cursor#114 char_cursor#137 char_cursor#154 char_cursor#2 char_cursor#1 ]
|
||||||
|
zp ZP_BYTE:11 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||||
|
zp ZP_BYTE:12 [ main::b#0 ]
|
||||||
reg byte y [ print_byte::$0 ]
|
reg byte y [ print_byte::$0 ]
|
||||||
reg byte y [ print_byte::$2 ]
|
reg byte y [ print_byte::$2 ]
|
||||||
|
@ -2,26 +2,48 @@ import "print.kc"
|
|||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
print_cls();
|
print_cls();
|
||||||
byte r;
|
|
||||||
byte[$10] cs = { $07, $f7, $17, $e7, $27, $d7 , $37, $c7, $47, $b7, $57, $a7, $67, $97, $77, $87 };
|
|
||||||
byte a = 7;
|
byte a = 7;
|
||||||
for( byte i : 0..$f ) {
|
for( byte i : 0..4 ) {
|
||||||
byte b = $ee-a;
|
byte r;
|
||||||
r = '-'; if(a<b) r='+'; printu(a, '<', b, r);
|
byte b = $ce-a;
|
||||||
r = '-'; if(a<$87) r='+'; printu(a, '<', $87, r);
|
byte[5] cs = { $07, $c7, $37, $97, $67 };
|
||||||
r = '-'; if(a<cs[i]) r='+'; printu(a, '<', cs[i], r);
|
r = '-'; if(a<b) r='+'; printu(a, "< @", b, r);
|
||||||
r = '-'; if(a<a) r='+'; printu(a, '<', a, r);
|
r = '-'; if(a<$37) r='+'; printu(a, "< @", $37, r);
|
||||||
|
r = '-'; if(a<cs[i]) r='+'; printu(a, "< @", cs[i], r);
|
||||||
|
r = '-'; if(a<a) r='+'; printu(a, "< @", a, r);
|
||||||
print_ln();
|
print_ln();
|
||||||
a=a+$10;
|
r = '-'; if(a>b) r='+'; printu(a, "> @", b, r);
|
||||||
|
r = '-'; if(a>$37) r='+'; printu(a, "> @", $37, r);
|
||||||
|
r = '-'; if(a>cs[i]) r='+'; printu(a, "> @", cs[i], r);
|
||||||
|
r = '-'; if(a>a) r='+'; printu(a, "> @", a, r);
|
||||||
|
print_ln();
|
||||||
|
r = '-'; if(a<=b) r='+'; printu(a, "<=@", b, r);
|
||||||
|
r = '-'; if(a<=$37) r='+'; printu(a, "<=@", $37, r);
|
||||||
|
r = '-'; if(a<=cs[i]) r='+'; printu(a, "<=@", cs[i], r);
|
||||||
|
r = '-'; if(a<=a) r='+'; printu(a, "<=@", a, r);
|
||||||
|
print_ln();
|
||||||
|
r = '-'; if(a>=b) r='+'; printu(a, ">=@", b, r);
|
||||||
|
r = '-'; if(a>=$37) r='+'; printu(a, ">=@", $37, r);
|
||||||
|
r = '-'; if(a>=cs[i]) r='+'; printu(a, ">=@", cs[i], r);
|
||||||
|
r = '-'; if(a>=a) r='+'; printu(a, ">=@", a, r);
|
||||||
|
print_ln();
|
||||||
|
r = '-'; if(a==b) r='+'; printu(a, "==@", b, r);
|
||||||
|
r = '-'; if(a==$37) r='+'; printu(a, "==@", $37, r);
|
||||||
|
r = '-'; if(a==cs[i]) r='+'; printu(a, "==@", cs[i], r);
|
||||||
|
r = '-'; if(a==a) r='+'; printu(a, "==@", a, r);
|
||||||
|
print_ln();
|
||||||
|
a=a+$30;
|
||||||
}
|
}
|
||||||
|
do {
|
||||||
|
// nothing;
|
||||||
|
} while(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void printu(byte a, byte op, byte b, byte res) {
|
void printu(byte a, byte[] op, byte b, byte res) {
|
||||||
print_char(' ');
|
print_char(' ');
|
||||||
print_byte(a);
|
print_byte(a);
|
||||||
print_char(op);
|
print_str(op);
|
||||||
print_byte(b);
|
print_byte(b);
|
||||||
print_char(' ');
|
print_char(' ');
|
||||||
print_char(res);
|
print_char(res);
|
||||||
|
Loading…
Reference in New Issue
Block a user