mirror of
https://gitlab.com/camelot/kickc.git
synced 2024-10-11 12:23:45 +00:00
Working on inline asm
This commit is contained in:
parent
bcef1c3662
commit
3d607aba7f
37
src/main/java/dk/camelot64/kickc/asm/AsmBasicUpstart.java
Normal file
37
src/main/java/dk/camelot64/kickc/asm/AsmBasicUpstart.java
Normal file
@ -0,0 +1,37 @@
|
||||
package dk.camelot64.kickc.asm;
|
||||
|
||||
/** Set the program counter */
|
||||
public class AsmBasicUpstart implements AsmLine {
|
||||
|
||||
private final String function;
|
||||
private int index;
|
||||
|
||||
public AsmBasicUpstart(String function) {
|
||||
this.function = function;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getLineBytes() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public double getLineCycles() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAsm() {
|
||||
return ":BasicUpstart("+function+")";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getIndex() {
|
||||
return index;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setIndex(int index) {
|
||||
this.index = index;
|
||||
}
|
||||
}
|
@ -1,5 +1,7 @@
|
||||
package dk.camelot64.kickc.asm;
|
||||
|
||||
import dk.camelot64.kickc.fragment.AsmFragment;
|
||||
|
||||
/** A label declaration .label lbl = val */
|
||||
public class AsmLabelDecl implements AsmLine {
|
||||
private final String name;
|
||||
@ -24,7 +26,7 @@ public class AsmLabelDecl implements AsmLine {
|
||||
|
||||
@Override
|
||||
public String getAsm() {
|
||||
return ".label "+name+" = "+address;
|
||||
return ".label "+name+" = "+ AsmFragment.getAsmNumber(address);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
42
src/main/java/dk/camelot64/kickc/asm/AsmSetPc.java
Normal file
42
src/main/java/dk/camelot64/kickc/asm/AsmSetPc.java
Normal file
@ -0,0 +1,42 @@
|
||||
package dk.camelot64.kickc.asm;
|
||||
|
||||
import dk.camelot64.kickc.NumberParser;
|
||||
import dk.camelot64.kickc.fragment.AsmFragment;
|
||||
|
||||
/** Set the program counter */
|
||||
public class AsmSetPc implements AsmLine {
|
||||
|
||||
private final String name;
|
||||
private final int address;
|
||||
private int index;
|
||||
|
||||
public AsmSetPc(String name, int address) {
|
||||
this.name = name;
|
||||
this.address = address;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getLineBytes() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public double getLineCycles() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAsm() {
|
||||
return ".pc = "+ AsmFragment.getAsmNumber(address)+" \""+name+"\"";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getIndex() {
|
||||
return index;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setIndex(int index) {
|
||||
this.index = index;
|
||||
}
|
||||
}
|
@ -486,7 +486,6 @@ public class AsmFragment {
|
||||
return getAsmParamName(varScope, asmName, getCodeScope());
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the ASM parameter for a specific bound constant
|
||||
* @param boundVar The constant
|
||||
|
15
src/main/java/dk/camelot64/kickc/model/StatementAsm.java
Normal file
15
src/main/java/dk/camelot64/kickc/model/StatementAsm.java
Normal file
@ -0,0 +1,15 @@
|
||||
package dk.camelot64.kickc.model;
|
||||
|
||||
/** Inline ASM code */
|
||||
public class StatementAsm extends StatementBase {
|
||||
|
||||
|
||||
public StatementAsm(Integer index) {
|
||||
super(index);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString(Program program) {
|
||||
return null;
|
||||
}
|
||||
}
|
@ -25,9 +25,7 @@ public abstract class StatementBase implements Statement {
|
||||
public boolean equals(Object o) {
|
||||
if (this == o) return true;
|
||||
if (o == null || getClass() != o.getClass()) return false;
|
||||
|
||||
StatementBase that = (StatementBase) o;
|
||||
|
||||
return index != null ? index.equals(that.index) : that.index == null;
|
||||
}
|
||||
|
||||
@ -60,4 +58,5 @@ public abstract class StatementBase implements Statement {
|
||||
str.append("]");
|
||||
return str.toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -47,6 +47,7 @@ public class Pass1GenerateStatementSequence extends KickCBaseVisitor<Object> {
|
||||
|
||||
public void generate(KickCParser.FileContext file) {
|
||||
this.visit(file);
|
||||
sequence.addStatement(new StatementCall(null, "main", new ArrayList<RValue>()));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -57,13 +57,13 @@ public class Pass1TypeInference {
|
||||
} else if(statement instanceof StatementCall) {
|
||||
StatementCall call = (StatementCall) statement;
|
||||
LValue lValue = call.getlValue();
|
||||
String procedureName = call.getProcedureName();
|
||||
Procedure procedure = scopes.peek().getProcedure(procedureName);
|
||||
call.setProcedure(procedure.getRef());
|
||||
if(procedure.getParameters().size()!=call.getParameters().size()) {
|
||||
throw new RuntimeException("Wrong number of parameters in call. Expected " +procedure.getParameters().size()+". "+statement.toString());
|
||||
}
|
||||
if(lValue instanceof VariableRef) {
|
||||
String procedureName = call.getProcedureName();
|
||||
Procedure procedure = scopes.peek().getProcedure(procedureName);
|
||||
call.setProcedure(procedure.getRef());
|
||||
if(procedure.getParameters().size()!=call.getParameters().size()) {
|
||||
throw new RuntimeException("Wrong number of parameters in call. Expected " +procedure.getParameters().size()+". "+statement.toString());
|
||||
}
|
||||
Variable lValueVar = programScope.getVariable((VariableRef) lValue);
|
||||
lValueVar.setTypeInferred(procedure.getReturnType());
|
||||
}
|
||||
|
@ -29,6 +29,11 @@ public class Pass4CodeGeneration {
|
||||
AsmProgram asm = new AsmProgram();
|
||||
ScopeRef currentScope = ScopeRef.ROOT;
|
||||
|
||||
asm.startSegment(null, "Basic Upstart");
|
||||
asm.addLine(new AsmSetPc("Basic", 0x0801));
|
||||
asm.addLine(new AsmBasicUpstart("main"));
|
||||
asm.addLine(new AsmSetPc("Program", 0x080d));
|
||||
|
||||
// Generate global ZP labels
|
||||
asm.startSegment(null, "Global Constants & labels");
|
||||
addConstants(asm, currentScope);
|
||||
|
@ -24,6 +24,10 @@ public class TestErrors extends TestCase {
|
||||
helper = new ReferenceHelper("dk/camelot64/kickc/test/ref/");
|
||||
}
|
||||
|
||||
public void testOverlapAllocation() throws IOException, URISyntaxException {
|
||||
compileAndCompare("overlap-allocation");
|
||||
}
|
||||
|
||||
public void testIncD020() throws IOException, URISyntaxException {
|
||||
compileAndCompare("incd020");
|
||||
}
|
||||
|
@ -56,21 +56,32 @@ void line(byte x0, byte x1, byte y0, byte y1) {
|
||||
if(yd<xd) {
|
||||
line_xdyi(x0, y0, x1, xd, yd);
|
||||
} else {
|
||||
plot(x0, y0);
|
||||
plot(x1, y1);
|
||||
line_ydxi(y0, x0, y1, yd, xd);
|
||||
}
|
||||
} else {
|
||||
plot(x0, y0);
|
||||
plot(x1, y1);
|
||||
yd = y0-y1;
|
||||
if(yd<xd) {
|
||||
line_xdyd(x0, y0, x1, xd, yd);
|
||||
} else {
|
||||
line_ydxd(y1, x1, y0, yd, xd);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
xd = x1-x0;
|
||||
xd = x0-x1;
|
||||
if(y0<y1) {
|
||||
plot(x0, y0);
|
||||
plot(x1, y1);
|
||||
yd = y1-y0;
|
||||
if(yd<xd) {
|
||||
line_xdyd(x1, y1, x0, xd, yd);
|
||||
} else {
|
||||
line_ydxd(y0, x0, y1, yd, xd);
|
||||
}
|
||||
} else {
|
||||
plot(x0, y0);
|
||||
plot(x1, y1);
|
||||
yd = y0-y1;
|
||||
if(yd<xd) {
|
||||
line_xdyi(x1, y1, x0, xd, yd);
|
||||
} else {
|
||||
line_ydxi(y1, x1, y0, yd, xd);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -88,6 +99,45 @@ void line_xdyi(byte x, byte y, byte x1, byte xd, byte yd) {
|
||||
} while (x<(x1+1))
|
||||
}
|
||||
|
||||
void line_xdyd(byte x, byte y, byte x1, byte xd, byte yd) {
|
||||
byte e = yd>>1;
|
||||
do {
|
||||
plot(x,y);
|
||||
x = x + 1;
|
||||
e = e+yd;
|
||||
if(xd<e) {
|
||||
y = y-1;
|
||||
e = e - xd;
|
||||
}
|
||||
} while (x<(x1+1))
|
||||
}
|
||||
|
||||
void line_ydxi(byte y, byte x, byte y1, byte yd, byte xd) {
|
||||
byte e = xd>>1;
|
||||
do {
|
||||
plot(x,y);
|
||||
y = y + 1;
|
||||
e = e+xd;
|
||||
if(yd<e) {
|
||||
x = x+1;
|
||||
e = e - yd;
|
||||
}
|
||||
} while (y<(y1+1))
|
||||
}
|
||||
|
||||
void line_ydxd(byte y, byte x, byte y1, byte yd, byte xd) {
|
||||
byte e = xd>>1;
|
||||
do {
|
||||
plot(x,y);
|
||||
y = y + 1;
|
||||
e = e+xd;
|
||||
if(yd<e) {
|
||||
x = x-1;
|
||||
e = e - yd;
|
||||
}
|
||||
} while (y<(y1+1))
|
||||
}
|
||||
|
||||
void plot(byte x, byte y) {
|
||||
byte* plotter_x = 0;
|
||||
byte* plotter_y = 0;
|
||||
|
19
src/main/java/dk/camelot64/kickc/test/overlap-allocation.kc
Normal file
19
src/main/java/dk/camelot64/kickc/test/overlap-allocation.kc
Normal file
@ -0,0 +1,19 @@
|
||||
// Allocates ZP to j/k-variables even though all of i, j, k could be allocates to x and be more efficient.
|
||||
// Reason: Pass4RegisterUpliftCombinations.isAllocationOverlapping() believes i/j/k variables overlaps insode plot()
|
||||
byte* SCREEN = $0400;
|
||||
|
||||
void main() {
|
||||
for(byte i : 0..10) {
|
||||
plot(i);
|
||||
}
|
||||
for(byte j : 0..10) {
|
||||
plot(j);
|
||||
}
|
||||
for(byte k : 0..10) {
|
||||
plot(k);
|
||||
}
|
||||
}
|
||||
|
||||
void plot(byte x) {
|
||||
SCREEN[x] = '*';
|
||||
}
|
@ -58,10 +58,9 @@ lines: {
|
||||
lda lines_y+1,x
|
||||
tax
|
||||
sty line.x0
|
||||
lda _2
|
||||
sta line.x1
|
||||
ldy _3
|
||||
stx line.y1
|
||||
ldy _2
|
||||
lda _3
|
||||
sta line.y0
|
||||
jsr line
|
||||
inc l
|
||||
lda l
|
||||
@ -71,73 +70,183 @@ lines: {
|
||||
}
|
||||
line: {
|
||||
.label x0 = 5
|
||||
.label x1 = 8
|
||||
.label y1 = 9
|
||||
.label xd = 10
|
||||
lda x0
|
||||
cmp x1
|
||||
bcs b1
|
||||
lda x1
|
||||
.label y0 = 3
|
||||
.label xd = 8
|
||||
.label yd = 4
|
||||
cpy x0
|
||||
bcc b1
|
||||
tya
|
||||
sec
|
||||
sbc x0
|
||||
sta xd
|
||||
cpy y1
|
||||
bcs b2
|
||||
sty $ff
|
||||
lda y1
|
||||
cpx y0
|
||||
bcc b2
|
||||
txa
|
||||
sec
|
||||
sbc $ff
|
||||
tax
|
||||
cpx xd
|
||||
sbc y0
|
||||
sta yd
|
||||
lda yd
|
||||
cmp xd
|
||||
bcs b3
|
||||
lda x0
|
||||
sta line_xdyi.x
|
||||
sty line_xdyi.y
|
||||
lda x1
|
||||
sta line_xdyi.x1
|
||||
stx line_xdyi.yd
|
||||
lda y0
|
||||
sta line_xdyi.y
|
||||
sty line_xdyi.x1
|
||||
lda xd
|
||||
sta line_xdyi.xd
|
||||
lda yd
|
||||
sta line_xdyi.yd
|
||||
jsr line_xdyi
|
||||
breturn:
|
||||
rts
|
||||
b3:
|
||||
ldx x0
|
||||
jsr plot
|
||||
ldx x1
|
||||
ldy y1
|
||||
jsr plot
|
||||
lda y0
|
||||
sta line_ydxi.y
|
||||
lda x0
|
||||
sta line_ydxi.x
|
||||
stx line_ydxi.y1
|
||||
lda xd
|
||||
sta line_ydxi.xd
|
||||
jsr line_ydxi
|
||||
jmp breturn
|
||||
b2:
|
||||
ldx x0
|
||||
jsr plot
|
||||
ldx x1
|
||||
ldy y1
|
||||
jsr plot
|
||||
stx $ff
|
||||
lda y0
|
||||
sec
|
||||
sbc $ff
|
||||
sta yd
|
||||
lda yd
|
||||
cmp xd
|
||||
bcs b6
|
||||
lda x0
|
||||
sta line_xdyd.x
|
||||
lda y0
|
||||
sta line_xdyd.y
|
||||
sty line_xdyd.x1
|
||||
lda xd
|
||||
sta line_xdyd.xd
|
||||
lda yd
|
||||
sta line_xdyd.yd
|
||||
jsr line_xdyd
|
||||
jmp breturn
|
||||
b6:
|
||||
stx line_ydxd.y
|
||||
sty line_ydxd.x
|
||||
lda y0
|
||||
sta line_ydxd.y1
|
||||
lda yd
|
||||
sta line_ydxd.yd
|
||||
lda xd
|
||||
sta line_ydxd.xd
|
||||
jsr line_ydxd
|
||||
jmp breturn
|
||||
b1:
|
||||
lda x1
|
||||
sty $ff
|
||||
lda x0
|
||||
sec
|
||||
sbc x0
|
||||
cpy y1
|
||||
bcs b7
|
||||
ldx x0
|
||||
jsr plot
|
||||
ldx x1
|
||||
ldy y1
|
||||
jsr plot
|
||||
sbc $ff
|
||||
sta xd
|
||||
cpx y0
|
||||
bcc b9
|
||||
txa
|
||||
sec
|
||||
sbc y0
|
||||
sta yd
|
||||
lda yd
|
||||
cmp xd
|
||||
bcs b10
|
||||
sty line_xdyd.x
|
||||
stx line_xdyd.y
|
||||
lda x0
|
||||
sta line_xdyd.x1
|
||||
lda xd
|
||||
sta line_xdyd.xd
|
||||
lda yd
|
||||
sta line_xdyd.yd
|
||||
jsr line_xdyd
|
||||
jmp breturn
|
||||
b7:
|
||||
ldx x0
|
||||
jsr plot
|
||||
ldx x1
|
||||
ldy y1
|
||||
jsr plot
|
||||
b10:
|
||||
lda y0
|
||||
sta line_ydxd.y
|
||||
lda x0
|
||||
sta line_ydxd.x
|
||||
stx line_ydxd.y1
|
||||
lda yd
|
||||
sta line_ydxd.yd
|
||||
lda xd
|
||||
sta line_ydxd.xd
|
||||
jsr line_ydxd
|
||||
jmp breturn
|
||||
b9:
|
||||
stx $ff
|
||||
lda y0
|
||||
sec
|
||||
sbc $ff
|
||||
sta yd
|
||||
lda yd
|
||||
cmp xd
|
||||
bcs b13
|
||||
sty line_xdyi.x
|
||||
stx line_xdyi.y
|
||||
lda x0
|
||||
sta line_xdyi.x1
|
||||
lda xd
|
||||
sta line_xdyi.xd
|
||||
lda yd
|
||||
sta line_xdyi.yd
|
||||
jsr line_xdyi
|
||||
jmp breturn
|
||||
b13:
|
||||
stx line_ydxi.y
|
||||
sty line_ydxi.x
|
||||
lda y0
|
||||
sta line_ydxi.y1
|
||||
lda xd
|
||||
sta line_ydxi.xd
|
||||
jsr line_ydxi
|
||||
jmp breturn
|
||||
}
|
||||
line_ydxi: {
|
||||
.label y = 7
|
||||
.label x = 6
|
||||
.label y1 = 5
|
||||
.label yd = 4
|
||||
.label xd = 3
|
||||
.label e = 8
|
||||
lda xd
|
||||
lsr
|
||||
sta e
|
||||
b1:
|
||||
ldx x
|
||||
ldy y
|
||||
jsr plot
|
||||
inc y
|
||||
lda e
|
||||
clc
|
||||
adc xd
|
||||
sta e
|
||||
lda yd
|
||||
cmp e
|
||||
bcs b2
|
||||
inc x
|
||||
lda e
|
||||
sec
|
||||
sbc yd
|
||||
sta e
|
||||
b2:
|
||||
lda y1
|
||||
clc
|
||||
adc #1
|
||||
cmp y
|
||||
bcs b1
|
||||
rts
|
||||
}
|
||||
plot: {
|
||||
.label _5 = 15
|
||||
.label plotter_x = 6
|
||||
.label plotter_y = 13
|
||||
.label plotter = 6
|
||||
.label _5 = 31
|
||||
.label plotter_x = 27
|
||||
.label plotter_y = 29
|
||||
.label plotter = 27
|
||||
lda plot_xhi,x
|
||||
sta plotter_x+1
|
||||
lda #<0
|
||||
@ -166,12 +275,12 @@ plot: {
|
||||
rts
|
||||
}
|
||||
line_xdyi: {
|
||||
.label x = 3
|
||||
.label y = 4
|
||||
.label x = 12
|
||||
.label y = 13
|
||||
.label x1 = 11
|
||||
.label xd = 10
|
||||
.label yd = 12
|
||||
.label e = 5
|
||||
.label yd = 9
|
||||
.label e = 14
|
||||
lda yd
|
||||
lsr
|
||||
sta e
|
||||
@ -200,9 +309,79 @@ line_xdyi: {
|
||||
bcs b1
|
||||
rts
|
||||
}
|
||||
line_ydxd: {
|
||||
.label y = 19
|
||||
.label x = 18
|
||||
.label y1 = 17
|
||||
.label yd = 16
|
||||
.label xd = 15
|
||||
.label e = 20
|
||||
lda xd
|
||||
lsr
|
||||
sta e
|
||||
b1:
|
||||
ldx x
|
||||
ldy y
|
||||
jsr plot
|
||||
inc y
|
||||
lda e
|
||||
clc
|
||||
adc xd
|
||||
sta e
|
||||
lda yd
|
||||
cmp e
|
||||
bcs b2
|
||||
dec x
|
||||
lda e
|
||||
sec
|
||||
sbc yd
|
||||
sta e
|
||||
b2:
|
||||
lda y1
|
||||
clc
|
||||
adc #1
|
||||
cmp y
|
||||
bcs b1
|
||||
rts
|
||||
}
|
||||
line_xdyd: {
|
||||
.label x = 24
|
||||
.label y = 25
|
||||
.label x1 = 23
|
||||
.label xd = 22
|
||||
.label yd = 21
|
||||
.label e = 26
|
||||
lda yd
|
||||
lsr
|
||||
sta e
|
||||
b1:
|
||||
ldx x
|
||||
ldy y
|
||||
jsr plot
|
||||
inc x
|
||||
lda e
|
||||
clc
|
||||
adc yd
|
||||
sta e
|
||||
lda xd
|
||||
cmp e
|
||||
bcs b2
|
||||
dec y
|
||||
lda e
|
||||
sec
|
||||
sbc xd
|
||||
sta e
|
||||
b2:
|
||||
lda x1
|
||||
clc
|
||||
adc #1
|
||||
cmp x
|
||||
bcs b1
|
||||
rts
|
||||
}
|
||||
init_plot_tables: {
|
||||
.label _6 = 2
|
||||
.label yoffs = 6
|
||||
.label yoffs = 27
|
||||
ldy #$80
|
||||
ldx #0
|
||||
b1:
|
||||
@ -256,8 +435,8 @@ init_plot_tables: {
|
||||
jmp b2
|
||||
}
|
||||
init_screen: {
|
||||
.label b = 6
|
||||
.label c = 6
|
||||
.label b = 27
|
||||
.label c = 27
|
||||
lda #<BITMAP
|
||||
sta b
|
||||
lda #>BITMAP
|
||||
|
@ -1,10 +1,10 @@
|
||||
@begin: scope:[] from
|
||||
to:@7
|
||||
@7: scope:[] from @begin
|
||||
to:@10
|
||||
@10: scope:[] from @begin
|
||||
[0] call main param-assignment [ ]
|
||||
to:@end
|
||||
@end: scope:[] from @7
|
||||
main: scope:[main] from @7
|
||||
@end: scope:[] from @10
|
||||
main: scope:[main] from @10
|
||||
[1] *((const byte*) BGCOL#0) ← (byte) 0 [ ]
|
||||
[2] *((const byte*) FGCOL#0) ← (byte) 0 [ ]
|
||||
[3] *((const byte*) D011#0) ← (const byte) BMM#0|(const byte) DEN#0|(const byte) RSEL#0|(byte) 3 [ ]
|
||||
@ -47,177 +47,312 @@ lines::@return: scope:[lines] from lines::@3
|
||||
to:@return
|
||||
line: scope:[line] from lines::@1
|
||||
[24] if((byte) line::x0#0>=(byte) line::x1#0) goto line::@1 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 ]
|
||||
to:line::@9
|
||||
line::@9: scope:[line] from line
|
||||
to:line::@15
|
||||
line::@15: scope:[line] from line
|
||||
[25] (byte) line::xd#1 ← (byte) line::x1#0 - (byte) line::x0#0 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#1 ]
|
||||
[26] if((byte) line::y0#0>=(byte) line::y1#0) goto line::@2 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#1 ]
|
||||
to:line::@10
|
||||
line::@10: scope:[line] from line::@9
|
||||
[27] (byte) line::yd#0 ← (byte) line::y1#0 - (byte) line::y0#0 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#1 line::yd#0 ]
|
||||
[28] if((byte) line::yd#0>=(byte) line::xd#1) goto line::@3 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#1 line::yd#0 ]
|
||||
to:line::@11
|
||||
line::@11: scope:[line] from line::@10
|
||||
[29] (byte) line_xdyi::x#0 ← (byte) line::x0#0 [ line::x1#0 line::y0#0 line::xd#1 line::yd#0 line_xdyi::x#0 ]
|
||||
[30] (byte) line_xdyi::y#0 ← (byte) line::y0#0 [ line::x1#0 line::xd#1 line::yd#0 line_xdyi::x#0 line_xdyi::y#0 ]
|
||||
[31] (byte) line_xdyi::x1#0 ← (byte) line::x1#0 [ line::xd#1 line::yd#0 line_xdyi::x#0 line_xdyi::y#0 line_xdyi::x1#0 ]
|
||||
[32] (byte) line_xdyi::xd#0 ← (byte) line::xd#1 [ line::yd#0 line_xdyi::x#0 line_xdyi::y#0 line_xdyi::x1#0 line_xdyi::xd#0 ]
|
||||
[33] (byte) line_xdyi::yd#0 ← (byte) line::yd#0 [ line_xdyi::x#0 line_xdyi::y#0 line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 ]
|
||||
to:line::@16
|
||||
line::@16: scope:[line] from line::@15
|
||||
[27] (byte) line::yd#1 ← (byte) line::y1#0 - (byte) line::y0#0 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#1 line::yd#1 ]
|
||||
[28] if((byte) line::yd#1>=(byte) line::xd#1) goto line::@3 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#1 line::yd#1 ]
|
||||
to:line::@17
|
||||
line::@17: scope:[line] from line::@16
|
||||
[29] (byte) line_xdyi::x#0 ← (byte) line::x0#0 [ line::x1#0 line::y0#0 line::xd#1 line::yd#1 line_xdyi::x#0 ]
|
||||
[30] (byte) line_xdyi::y#0 ← (byte) line::y0#0 [ line::x1#0 line::xd#1 line::yd#1 line_xdyi::x#0 line_xdyi::y#0 ]
|
||||
[31] (byte) line_xdyi::x1#0 ← (byte) line::x1#0 [ line::xd#1 line::yd#1 line_xdyi::x#0 line_xdyi::y#0 line_xdyi::x1#0 ]
|
||||
[32] (byte) line_xdyi::xd#0 ← (byte) line::xd#1 [ line::yd#1 line_xdyi::x#0 line_xdyi::y#0 line_xdyi::x1#0 line_xdyi::xd#0 ]
|
||||
[33] (byte) line_xdyi::yd#0 ← (byte) line::yd#1 [ line_xdyi::x#0 line_xdyi::y#0 line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 ]
|
||||
[34] call line_xdyi param-assignment [ ]
|
||||
to:line::@return
|
||||
line::@return: scope:[line] from line::@11 line::@17 line::@19 line::@22 line::@24
|
||||
line::@return: scope:[line] from line::@10 line::@13 line::@17 line::@20 line::@24 line::@27 line::@3 line::@6
|
||||
[35] return [ ]
|
||||
to:@return
|
||||
line::@3: scope:[line] from line::@10
|
||||
[36] (byte) plot::x#2 ← (byte) line::x0#0 [ line::x1#0 line::y0#0 line::y1#0 plot::x#2 ]
|
||||
[37] (byte) plot::y#2 ← (byte) line::y0#0 [ line::x1#0 line::y1#0 plot::x#2 plot::y#2 ]
|
||||
[38] call plot param-assignment [ line::x1#0 line::y1#0 ]
|
||||
to:line::@19
|
||||
line::@19: scope:[line] from line::@3
|
||||
[39] (byte) plot::x#3 ← (byte) line::x1#0 [ line::y1#0 plot::x#3 ]
|
||||
[40] (byte) plot::y#3 ← (byte) line::y1#0 [ plot::x#3 plot::y#3 ]
|
||||
[41] call plot param-assignment [ ]
|
||||
line::@3: scope:[line] from line::@16
|
||||
[36] (byte) line_ydxi::y#0 ← (byte) line::y0#0 [ line::x0#0 line::y1#0 line::xd#1 line::yd#1 line_ydxi::y#0 ]
|
||||
[37] (byte) line_ydxi::x#0 ← (byte) line::x0#0 [ line::y1#0 line::xd#1 line::yd#1 line_ydxi::y#0 line_ydxi::x#0 ]
|
||||
[38] (byte) line_ydxi::y1#0 ← (byte) line::y1#0 [ line::xd#1 line::yd#1 line_ydxi::y#0 line_ydxi::x#0 line_ydxi::y1#0 ]
|
||||
[39] (byte) line_ydxi::yd#0 ← (byte) line::yd#1 [ line::xd#1 line_ydxi::y#0 line_ydxi::x#0 line_ydxi::y1#0 line_ydxi::yd#0 ]
|
||||
[40] (byte) line_ydxi::xd#0 ← (byte) line::xd#1 [ line_ydxi::y#0 line_ydxi::x#0 line_ydxi::y1#0 line_ydxi::yd#0 line_ydxi::xd#0 ]
|
||||
[41] call line_ydxi param-assignment [ ]
|
||||
to:line::@return
|
||||
line::@2: scope:[line] from line::@9
|
||||
[42] (byte) plot::x#0 ← (byte) line::x0#0 [ line::x1#0 line::y0#0 line::y1#0 plot::x#0 ]
|
||||
[43] (byte) plot::y#0 ← (byte) line::y0#0 [ line::x1#0 line::y1#0 plot::x#0 plot::y#0 ]
|
||||
[44] call plot param-assignment [ line::x1#0 line::y1#0 ]
|
||||
to:line::@17
|
||||
line::@17: scope:[line] from line::@2
|
||||
[45] (byte) plot::x#1 ← (byte) line::x1#0 [ line::y1#0 plot::x#1 ]
|
||||
[46] (byte) plot::y#1 ← (byte) line::y1#0 [ plot::x#1 plot::y#1 ]
|
||||
[47] call plot param-assignment [ ]
|
||||
line::@2: scope:[line] from line::@15
|
||||
[42] (byte) line::yd#0 ← (byte) line::y0#0 - (byte) line::y1#0 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#1 line::yd#0 ]
|
||||
[43] if((byte) line::yd#0>=(byte) line::xd#1) goto line::@6 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#1 line::yd#0 ]
|
||||
to:line::@20
|
||||
line::@20: scope:[line] from line::@2
|
||||
[44] (byte) line_xdyd::x#0 ← (byte) line::x0#0 [ line::x1#0 line::y0#0 line::xd#1 line::yd#0 line_xdyd::x#0 ]
|
||||
[45] (byte) line_xdyd::y#0 ← (byte) line::y0#0 [ line::x1#0 line::xd#1 line::yd#0 line_xdyd::x#0 line_xdyd::y#0 ]
|
||||
[46] (byte) line_xdyd::x1#0 ← (byte) line::x1#0 [ line::xd#1 line::yd#0 line_xdyd::x#0 line_xdyd::y#0 line_xdyd::x1#0 ]
|
||||
[47] (byte) line_xdyd::xd#0 ← (byte) line::xd#1 [ line::yd#0 line_xdyd::x#0 line_xdyd::y#0 line_xdyd::x1#0 line_xdyd::xd#0 ]
|
||||
[48] (byte) line_xdyd::yd#0 ← (byte) line::yd#0 [ line_xdyd::x#0 line_xdyd::y#0 line_xdyd::x1#0 line_xdyd::xd#0 line_xdyd::yd#0 ]
|
||||
[49] call line_xdyd param-assignment [ ]
|
||||
to:line::@return
|
||||
line::@6: scope:[line] from line::@2
|
||||
[50] (byte) line_ydxd::y#0 ← (byte) line::y1#0 [ line::x1#0 line::y0#0 line::xd#1 line::yd#0 line_ydxd::y#0 ]
|
||||
[51] (byte) line_ydxd::x#0 ← (byte) line::x1#0 [ line::y0#0 line::xd#1 line::yd#0 line_ydxd::y#0 line_ydxd::x#0 ]
|
||||
[52] (byte) line_ydxd::y1#0 ← (byte) line::y0#0 [ line::xd#1 line::yd#0 line_ydxd::y#0 line_ydxd::x#0 line_ydxd::y1#0 ]
|
||||
[53] (byte) line_ydxd::yd#0 ← (byte) line::yd#0 [ line::xd#1 line_ydxd::y#0 line_ydxd::x#0 line_ydxd::y1#0 line_ydxd::yd#0 ]
|
||||
[54] (byte) line_ydxd::xd#0 ← (byte) line::xd#1 [ line_ydxd::y#0 line_ydxd::x#0 line_ydxd::y1#0 line_ydxd::yd#0 line_ydxd::xd#0 ]
|
||||
[55] call line_ydxd param-assignment [ ]
|
||||
to:line::@return
|
||||
line::@1: scope:[line] from line
|
||||
[48] (byte) line::xd#0 ← (byte) line::x1#0 - (byte) line::x0#0 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 ]
|
||||
[49] if((byte) line::y0#0>=(byte) line::y1#0) goto line::@7 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 ]
|
||||
to:line::@15
|
||||
line::@15: scope:[line] from line::@1
|
||||
[50] (byte) plot::x#6 ← (byte) line::x0#0 [ line::x1#0 line::y0#0 line::y1#0 plot::x#6 ]
|
||||
[51] (byte) plot::y#6 ← (byte) line::y0#0 [ line::x1#0 line::y1#0 plot::x#6 plot::y#6 ]
|
||||
[52] call plot param-assignment [ line::x1#0 line::y1#0 ]
|
||||
[56] (byte) line::xd#0 ← (byte) line::x0#0 - (byte) line::x1#0 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#0 ]
|
||||
[57] if((byte) line::y0#0>=(byte) line::y1#0) goto line::@9 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#0 ]
|
||||
to:line::@23
|
||||
line::@23: scope:[line] from line::@1
|
||||
[58] (byte) line::yd#3 ← (byte) line::y1#0 - (byte) line::y0#0 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#0 line::yd#3 ]
|
||||
[59] if((byte) line::yd#3>=(byte) line::xd#0) goto line::@10 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#0 line::yd#3 ]
|
||||
to:line::@24
|
||||
line::@24: scope:[line] from line::@15
|
||||
[53] (byte) plot::x#7 ← (byte) line::x1#0 [ line::y1#0 plot::x#7 ]
|
||||
[54] (byte) plot::y#7 ← (byte) line::y1#0 [ plot::x#7 plot::y#7 ]
|
||||
[55] call plot param-assignment [ ]
|
||||
line::@24: scope:[line] from line::@23
|
||||
[60] (byte) line_xdyd::x#1 ← (byte) line::x1#0 [ line::x0#0 line::y1#0 line::xd#0 line::yd#3 line_xdyd::x#1 ]
|
||||
[61] (byte) line_xdyd::y#1 ← (byte) line::y1#0 [ line::x0#0 line::xd#0 line::yd#3 line_xdyd::x#1 line_xdyd::y#1 ]
|
||||
[62] (byte) line_xdyd::x1#1 ← (byte) line::x0#0 [ line::xd#0 line::yd#3 line_xdyd::x#1 line_xdyd::y#1 line_xdyd::x1#1 ]
|
||||
[63] (byte) line_xdyd::xd#1 ← (byte) line::xd#0 [ line::yd#3 line_xdyd::x#1 line_xdyd::y#1 line_xdyd::x1#1 line_xdyd::xd#1 ]
|
||||
[64] (byte) line_xdyd::yd#1 ← (byte) line::yd#3 [ line_xdyd::x#1 line_xdyd::y#1 line_xdyd::x1#1 line_xdyd::xd#1 line_xdyd::yd#1 ]
|
||||
[65] call line_xdyd param-assignment [ ]
|
||||
to:line::@return
|
||||
line::@7: scope:[line] from line::@1
|
||||
[56] (byte) plot::x#4 ← (byte) line::x0#0 [ line::x1#0 line::y0#0 line::y1#0 plot::x#4 ]
|
||||
[57] (byte) plot::y#4 ← (byte) line::y0#0 [ line::x1#0 line::y1#0 plot::x#4 plot::y#4 ]
|
||||
[58] call plot param-assignment [ line::x1#0 line::y1#0 ]
|
||||
to:line::@22
|
||||
line::@22: scope:[line] from line::@7
|
||||
[59] (byte) plot::x#5 ← (byte) line::x1#0 [ line::y1#0 plot::x#5 ]
|
||||
[60] (byte) plot::y#5 ← (byte) line::y1#0 [ plot::x#5 plot::y#5 ]
|
||||
[61] call plot param-assignment [ ]
|
||||
line::@10: scope:[line] from line::@23
|
||||
[66] (byte) line_ydxd::y#1 ← (byte) line::y0#0 [ line::x0#0 line::y1#0 line::xd#0 line::yd#3 line_ydxd::y#1 ]
|
||||
[67] (byte) line_ydxd::x#1 ← (byte) line::x0#0 [ line::y1#0 line::xd#0 line::yd#3 line_ydxd::y#1 line_ydxd::x#1 ]
|
||||
[68] (byte) line_ydxd::y1#1 ← (byte) line::y1#0 [ line::xd#0 line::yd#3 line_ydxd::y#1 line_ydxd::x#1 line_ydxd::y1#1 ]
|
||||
[69] (byte) line_ydxd::yd#1 ← (byte) line::yd#3 [ line::xd#0 line_ydxd::y#1 line_ydxd::x#1 line_ydxd::y1#1 line_ydxd::yd#1 ]
|
||||
[70] (byte) line_ydxd::xd#1 ← (byte) line::xd#0 [ line_ydxd::y#1 line_ydxd::x#1 line_ydxd::y1#1 line_ydxd::yd#1 line_ydxd::xd#1 ]
|
||||
[71] call line_ydxd param-assignment [ ]
|
||||
to:line::@return
|
||||
plot: scope:[plot] from line::@15 line::@17 line::@19 line::@2 line::@22 line::@24 line::@3 line::@7 line_xdyi::@1
|
||||
[62] (byte) plot::y#9 ← phi( line::@15/(byte) plot::y#6 line::@17/(byte) plot::y#1 line::@19/(byte) plot::y#3 line::@2/(byte) plot::y#0 line::@22/(byte) plot::y#5 line::@24/(byte) plot::y#7 line::@3/(byte) plot::y#2 line::@7/(byte) plot::y#4 line_xdyi::@1/(byte) plot::y#8 ) [ plot::x#9 plot::y#9 ]
|
||||
[62] (byte) plot::x#9 ← phi( line::@15/(byte) plot::x#6 line::@17/(byte) plot::x#1 line::@19/(byte) plot::x#3 line::@2/(byte) plot::x#0 line::@22/(byte) plot::x#5 line::@24/(byte) plot::x#7 line::@3/(byte) plot::x#2 line::@7/(byte) plot::x#4 line_xdyi::@1/(byte) plot::x#8 ) [ plot::x#9 plot::y#9 ]
|
||||
[63] (byte~) plot::$0 ← (const byte[]) plot_xhi#0 *idx (byte) plot::x#9 [ plot::x#9 plot::y#9 plot::$0 ]
|
||||
[64] (byte*) plot::plotter_x#1 ← (byte) 0 hi= (byte~) plot::$0 [ plot::x#9 plot::y#9 plot::plotter_x#1 ]
|
||||
[65] (byte~) plot::$1 ← (const byte[]) plot_xlo#0 *idx (byte) plot::x#9 [ plot::x#9 plot::y#9 plot::plotter_x#1 plot::$1 ]
|
||||
[66] (byte*) plot::plotter_x#2 ← (byte*) plot::plotter_x#1 lo= (byte~) plot::$1 [ plot::x#9 plot::y#9 plot::plotter_x#2 ]
|
||||
[67] (byte~) plot::$2 ← (const byte[]) plot_yhi#0 *idx (byte) plot::y#9 [ plot::x#9 plot::y#9 plot::plotter_x#2 plot::$2 ]
|
||||
[68] (byte*) plot::plotter_y#1 ← (byte) 0 hi= (byte~) plot::$2 [ plot::x#9 plot::y#9 plot::plotter_x#2 plot::plotter_y#1 ]
|
||||
[69] (byte~) plot::$3 ← (const byte[]) plot_ylo#0 *idx (byte) plot::y#9 [ plot::x#9 plot::plotter_x#2 plot::plotter_y#1 plot::$3 ]
|
||||
[70] (byte*) plot::plotter_y#2 ← (byte*) plot::plotter_y#1 lo= (byte~) plot::$3 [ plot::x#9 plot::plotter_x#2 plot::plotter_y#2 ]
|
||||
[71] (byte*) plot::plotter#0 ← (byte*) plot::plotter_x#2 + (byte*) plot::plotter_y#2 [ plot::x#9 plot::plotter#0 ]
|
||||
[72] (byte~) plot::$5 ← * (byte*) plot::plotter#0 [ plot::x#9 plot::plotter#0 plot::$5 ]
|
||||
[73] (byte~) plot::$6 ← (const byte[]) plot_bit#0 *idx (byte) plot::x#9 [ plot::plotter#0 plot::$5 plot::$6 ]
|
||||
[74] (byte~) plot::$7 ← (byte~) plot::$5 | (byte~) plot::$6 [ plot::plotter#0 plot::$7 ]
|
||||
[75] *((byte*) plot::plotter#0) ← (byte~) plot::$7 [ ]
|
||||
line::@9: scope:[line] from line::@1
|
||||
[72] (byte) line::yd#10 ← (byte) line::y0#0 - (byte) line::y1#0 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#0 line::yd#10 ]
|
||||
[73] if((byte) line::yd#10>=(byte) line::xd#0) goto line::@13 [ line::x0#0 line::x1#0 line::y0#0 line::y1#0 line::xd#0 line::yd#10 ]
|
||||
to:line::@27
|
||||
line::@27: scope:[line] from line::@9
|
||||
[74] (byte) line_xdyi::x#1 ← (byte) line::x1#0 [ line::x0#0 line::y1#0 line::xd#0 line::yd#10 line_xdyi::x#1 ]
|
||||
[75] (byte) line_xdyi::y#1 ← (byte) line::y1#0 [ line::x0#0 line::xd#0 line::yd#10 line_xdyi::x#1 line_xdyi::y#1 ]
|
||||
[76] (byte) line_xdyi::x1#1 ← (byte) line::x0#0 [ line::xd#0 line::yd#10 line_xdyi::x#1 line_xdyi::y#1 line_xdyi::x1#1 ]
|
||||
[77] (byte) line_xdyi::xd#1 ← (byte) line::xd#0 [ line::yd#10 line_xdyi::x#1 line_xdyi::y#1 line_xdyi::x1#1 line_xdyi::xd#1 ]
|
||||
[78] (byte) line_xdyi::yd#1 ← (byte) line::yd#10 [ line_xdyi::x#1 line_xdyi::y#1 line_xdyi::x1#1 line_xdyi::xd#1 line_xdyi::yd#1 ]
|
||||
[79] call line_xdyi param-assignment [ ]
|
||||
to:line::@return
|
||||
line::@13: scope:[line] from line::@9
|
||||
[80] (byte) line_ydxi::y#1 ← (byte) line::y1#0 [ line::x1#0 line::y0#0 line::xd#0 line::yd#10 line_ydxi::y#1 ]
|
||||
[81] (byte) line_ydxi::x#1 ← (byte) line::x1#0 [ line::y0#0 line::xd#0 line::yd#10 line_ydxi::y#1 line_ydxi::x#1 ]
|
||||
[82] (byte) line_ydxi::y1#1 ← (byte) line::y0#0 [ line::xd#0 line::yd#10 line_ydxi::y#1 line_ydxi::x#1 line_ydxi::y1#1 ]
|
||||
[83] (byte) line_ydxi::yd#1 ← (byte) line::yd#10 [ line::xd#0 line_ydxi::y#1 line_ydxi::x#1 line_ydxi::y1#1 line_ydxi::yd#1 ]
|
||||
[84] (byte) line_ydxi::xd#1 ← (byte) line::xd#0 [ line_ydxi::y#1 line_ydxi::x#1 line_ydxi::y1#1 line_ydxi::yd#1 line_ydxi::xd#1 ]
|
||||
[85] call line_ydxi param-assignment [ ]
|
||||
to:line::@return
|
||||
line_ydxi: scope:[line_ydxi] from line::@13 line::@3
|
||||
[86] (byte) line_ydxi::y1#6 ← phi( line::@13/(byte) line_ydxi::y1#1 line::@3/(byte) line_ydxi::y1#0 ) [ line_ydxi::xd#2 line_ydxi::x#5 line_ydxi::y#6 line_ydxi::yd#5 line_ydxi::y1#6 ]
|
||||
[86] (byte) line_ydxi::yd#5 ← phi( line::@13/(byte) line_ydxi::yd#1 line::@3/(byte) line_ydxi::yd#0 ) [ line_ydxi::xd#2 line_ydxi::x#5 line_ydxi::y#6 line_ydxi::yd#5 line_ydxi::y1#6 ]
|
||||
[86] (byte) line_ydxi::y#6 ← phi( line::@13/(byte) line_ydxi::y#1 line::@3/(byte) line_ydxi::y#0 ) [ line_ydxi::xd#2 line_ydxi::x#5 line_ydxi::y#6 line_ydxi::yd#5 line_ydxi::y1#6 ]
|
||||
[86] (byte) line_ydxi::x#5 ← phi( line::@13/(byte) line_ydxi::x#1 line::@3/(byte) line_ydxi::x#0 ) [ line_ydxi::xd#2 line_ydxi::x#5 line_ydxi::y#6 line_ydxi::yd#5 line_ydxi::y1#6 ]
|
||||
[86] (byte) line_ydxi::xd#2 ← phi( line::@13/(byte) line_ydxi::xd#1 line::@3/(byte) line_ydxi::xd#0 ) [ line_ydxi::xd#2 line_ydxi::x#5 line_ydxi::y#6 line_ydxi::yd#5 line_ydxi::y1#6 ]
|
||||
[87] (byte) line_ydxi::e#0 ← (byte) line_ydxi::xd#2 >> (byte) 1 [ line_ydxi::xd#2 line_ydxi::x#5 line_ydxi::y#6 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::e#0 ]
|
||||
to:line_ydxi::@1
|
||||
line_ydxi::@1: scope:[line_ydxi] from line_ydxi line_ydxi::@2
|
||||
[88] (byte) line_ydxi::e#3 ← phi( line_ydxi/(byte) line_ydxi::e#0 line_ydxi::@2/(byte) line_ydxi::e#6 ) [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#3 line_ydxi::y#3 line_ydxi::e#3 ]
|
||||
[88] (byte) line_ydxi::y#3 ← phi( line_ydxi/(byte) line_ydxi::y#6 line_ydxi::@2/(byte) line_ydxi::y#2 ) [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#3 line_ydxi::y#3 line_ydxi::e#3 ]
|
||||
[88] (byte) line_ydxi::x#3 ← phi( line_ydxi/(byte) line_ydxi::x#5 line_ydxi::@2/(byte) line_ydxi::x#6 ) [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#3 line_ydxi::y#3 line_ydxi::e#3 ]
|
||||
[89] (byte) plot::x#2 ← (byte) line_ydxi::x#3 [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#3 line_ydxi::y#3 line_ydxi::e#3 plot::x#2 ]
|
||||
[90] (byte) plot::y#2 ← (byte) line_ydxi::y#3 [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#3 line_ydxi::y#3 line_ydxi::e#3 plot::x#2 plot::y#2 ]
|
||||
[91] call plot param-assignment [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#3 line_ydxi::y#3 line_ydxi::e#3 ]
|
||||
to:line_ydxi::@5
|
||||
line_ydxi::@5: scope:[line_ydxi] from line_ydxi::@1
|
||||
[92] (byte) line_ydxi::y#2 ← (byte) line_ydxi::y#3 + (byte) 1 [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#3 line_ydxi::e#3 line_ydxi::y#2 ]
|
||||
[93] (byte) line_ydxi::e#1 ← (byte) line_ydxi::e#3 + (byte) line_ydxi::xd#2 [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#3 line_ydxi::y#2 line_ydxi::e#1 ]
|
||||
[94] if((byte) line_ydxi::yd#5>=(byte) line_ydxi::e#1) goto line_ydxi::@2 [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#3 line_ydxi::y#2 line_ydxi::e#1 ]
|
||||
to:line_ydxi::@3
|
||||
line_ydxi::@3: scope:[line_ydxi] from line_ydxi::@5
|
||||
[95] (byte) line_ydxi::x#2 ← (byte) line_ydxi::x#3 + (byte) 1 [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::y#2 line_ydxi::e#1 line_ydxi::x#2 ]
|
||||
[96] (byte) line_ydxi::e#2 ← (byte) line_ydxi::e#1 - (byte) line_ydxi::yd#5 [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::y#2 line_ydxi::x#2 line_ydxi::e#2 ]
|
||||
to:line_ydxi::@2
|
||||
line_ydxi::@2: scope:[line_ydxi] from line_ydxi::@3 line_ydxi::@5
|
||||
[97] (byte) line_ydxi::e#6 ← phi( line_ydxi::@3/(byte) line_ydxi::e#2 line_ydxi::@5/(byte) line_ydxi::e#1 ) [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#6 line_ydxi::y#2 line_ydxi::e#6 ]
|
||||
[97] (byte) line_ydxi::x#6 ← phi( line_ydxi::@3/(byte) line_ydxi::x#2 line_ydxi::@5/(byte) line_ydxi::x#3 ) [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#6 line_ydxi::y#2 line_ydxi::e#6 ]
|
||||
[98] (byte~) line_ydxi::$8 ← (byte) line_ydxi::y1#6 + (byte) 1 [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#6 line_ydxi::y#2 line_ydxi::e#6 line_ydxi::$8 ]
|
||||
[99] if((byte) line_ydxi::y#2<(byte~) line_ydxi::$8) goto line_ydxi::@1 [ line_ydxi::xd#2 line_ydxi::yd#5 line_ydxi::y1#6 line_ydxi::x#6 line_ydxi::y#2 line_ydxi::e#6 ]
|
||||
to:line_ydxi::@return
|
||||
line_ydxi::@return: scope:[line_ydxi] from line_ydxi::@2
|
||||
[100] return [ ]
|
||||
to:@return
|
||||
plot: scope:[plot] from line_xdyd::@1 line_xdyi::@1 line_ydxd::@1 line_ydxi::@1
|
||||
[101] (byte) plot::y#4 ← phi( line_xdyd::@1/(byte) plot::y#1 line_xdyi::@1/(byte) plot::y#0 line_ydxd::@1/(byte) plot::y#3 line_ydxi::@1/(byte) plot::y#2 ) [ plot::x#4 plot::y#4 ]
|
||||
[101] (byte) plot::x#4 ← phi( line_xdyd::@1/(byte) plot::x#1 line_xdyi::@1/(byte) plot::x#0 line_ydxd::@1/(byte) plot::x#3 line_ydxi::@1/(byte) plot::x#2 ) [ plot::x#4 plot::y#4 ]
|
||||
[102] (byte~) plot::$0 ← (const byte[]) plot_xhi#0 *idx (byte) plot::x#4 [ plot::x#4 plot::y#4 plot::$0 ]
|
||||
[103] (byte*) plot::plotter_x#1 ← (byte) 0 hi= (byte~) plot::$0 [ plot::x#4 plot::y#4 plot::plotter_x#1 ]
|
||||
[104] (byte~) plot::$1 ← (const byte[]) plot_xlo#0 *idx (byte) plot::x#4 [ plot::x#4 plot::y#4 plot::plotter_x#1 plot::$1 ]
|
||||
[105] (byte*) plot::plotter_x#2 ← (byte*) plot::plotter_x#1 lo= (byte~) plot::$1 [ plot::x#4 plot::y#4 plot::plotter_x#2 ]
|
||||
[106] (byte~) plot::$2 ← (const byte[]) plot_yhi#0 *idx (byte) plot::y#4 [ plot::x#4 plot::y#4 plot::plotter_x#2 plot::$2 ]
|
||||
[107] (byte*) plot::plotter_y#1 ← (byte) 0 hi= (byte~) plot::$2 [ plot::x#4 plot::y#4 plot::plotter_x#2 plot::plotter_y#1 ]
|
||||
[108] (byte~) plot::$3 ← (const byte[]) plot_ylo#0 *idx (byte) plot::y#4 [ plot::x#4 plot::plotter_x#2 plot::plotter_y#1 plot::$3 ]
|
||||
[109] (byte*) plot::plotter_y#2 ← (byte*) plot::plotter_y#1 lo= (byte~) plot::$3 [ plot::x#4 plot::plotter_x#2 plot::plotter_y#2 ]
|
||||
[110] (byte*) plot::plotter#0 ← (byte*) plot::plotter_x#2 + (byte*) plot::plotter_y#2 [ plot::x#4 plot::plotter#0 ]
|
||||
[111] (byte~) plot::$5 ← * (byte*) plot::plotter#0 [ plot::x#4 plot::plotter#0 plot::$5 ]
|
||||
[112] (byte~) plot::$6 ← (const byte[]) plot_bit#0 *idx (byte) plot::x#4 [ plot::plotter#0 plot::$5 plot::$6 ]
|
||||
[113] (byte~) plot::$7 ← (byte~) plot::$5 | (byte~) plot::$6 [ plot::plotter#0 plot::$7 ]
|
||||
[114] *((byte*) plot::plotter#0) ← (byte~) plot::$7 [ ]
|
||||
to:plot::@return
|
||||
plot::@return: scope:[plot] from plot
|
||||
[76] return [ ]
|
||||
[115] return [ ]
|
||||
to:@return
|
||||
line_xdyi: scope:[line_xdyi] from line::@11
|
||||
[77] (byte) line_xdyi::e#0 ← (byte) line_xdyi::yd#0 >> (byte) 1 [ line_xdyi::x#0 line_xdyi::y#0 line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::e#0 ]
|
||||
line_xdyi: scope:[line_xdyi] from line::@17 line::@27
|
||||
[116] (byte) line_xdyi::x1#6 ← phi( line::@17/(byte) line_xdyi::x1#0 line::@27/(byte) line_xdyi::x1#1 ) [ line_xdyi::yd#2 line_xdyi::x#6 line_xdyi::y#5 line_xdyi::xd#5 line_xdyi::x1#6 ]
|
||||
[116] (byte) line_xdyi::xd#5 ← phi( line::@17/(byte) line_xdyi::xd#0 line::@27/(byte) line_xdyi::xd#1 ) [ line_xdyi::yd#2 line_xdyi::x#6 line_xdyi::y#5 line_xdyi::xd#5 line_xdyi::x1#6 ]
|
||||
[116] (byte) line_xdyi::y#5 ← phi( line::@17/(byte) line_xdyi::y#0 line::@27/(byte) line_xdyi::y#1 ) [ line_xdyi::yd#2 line_xdyi::x#6 line_xdyi::y#5 line_xdyi::xd#5 line_xdyi::x1#6 ]
|
||||
[116] (byte) line_xdyi::x#6 ← phi( line::@17/(byte) line_xdyi::x#0 line::@27/(byte) line_xdyi::x#1 ) [ line_xdyi::yd#2 line_xdyi::x#6 line_xdyi::y#5 line_xdyi::xd#5 line_xdyi::x1#6 ]
|
||||
[116] (byte) line_xdyi::yd#2 ← phi( line::@17/(byte) line_xdyi::yd#0 line::@27/(byte) line_xdyi::yd#1 ) [ line_xdyi::yd#2 line_xdyi::x#6 line_xdyi::y#5 line_xdyi::xd#5 line_xdyi::x1#6 ]
|
||||
[117] (byte) line_xdyi::e#0 ← (byte) line_xdyi::yd#2 >> (byte) 1 [ line_xdyi::yd#2 line_xdyi::x#6 line_xdyi::y#5 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::e#0 ]
|
||||
to:line_xdyi::@1
|
||||
line_xdyi::@1: scope:[line_xdyi] from line_xdyi line_xdyi::@2
|
||||
[78] (byte) line_xdyi::e#3 ← phi( line_xdyi/(byte) line_xdyi::e#0 line_xdyi::@2/(byte) line_xdyi::e#6 ) [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::x#2 line_xdyi::y#2 line_xdyi::e#3 ]
|
||||
[78] (byte) line_xdyi::y#2 ← phi( line_xdyi/(byte) line_xdyi::y#0 line_xdyi::@2/(byte) line_xdyi::y#5 ) [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::x#2 line_xdyi::y#2 line_xdyi::e#3 ]
|
||||
[78] (byte) line_xdyi::x#2 ← phi( line_xdyi/(byte) line_xdyi::x#0 line_xdyi::@2/(byte) line_xdyi::x#1 ) [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::x#2 line_xdyi::y#2 line_xdyi::e#3 ]
|
||||
[79] (byte) plot::x#8 ← (byte) line_xdyi::x#2 [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 plot::x#8 line_xdyi::x#2 line_xdyi::y#2 line_xdyi::e#3 ]
|
||||
[80] (byte) plot::y#8 ← (byte) line_xdyi::y#2 [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 plot::x#8 plot::y#8 line_xdyi::x#2 line_xdyi::y#2 line_xdyi::e#3 ]
|
||||
[81] call plot param-assignment [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::x#2 line_xdyi::y#2 line_xdyi::e#3 ]
|
||||
[118] (byte) line_xdyi::e#3 ← phi( line_xdyi/(byte) line_xdyi::e#0 line_xdyi::@2/(byte) line_xdyi::e#6 ) [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#3 line_xdyi::y#3 line_xdyi::e#3 ]
|
||||
[118] (byte) line_xdyi::y#3 ← phi( line_xdyi/(byte) line_xdyi::y#5 line_xdyi::@2/(byte) line_xdyi::y#6 ) [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#3 line_xdyi::y#3 line_xdyi::e#3 ]
|
||||
[118] (byte) line_xdyi::x#3 ← phi( line_xdyi/(byte) line_xdyi::x#6 line_xdyi::@2/(byte) line_xdyi::x#2 ) [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#3 line_xdyi::y#3 line_xdyi::e#3 ]
|
||||
[119] (byte) plot::x#0 ← (byte) line_xdyi::x#3 [ plot::x#0 line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#3 line_xdyi::y#3 line_xdyi::e#3 ]
|
||||
[120] (byte) plot::y#0 ← (byte) line_xdyi::y#3 [ plot::x#0 plot::y#0 line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#3 line_xdyi::y#3 line_xdyi::e#3 ]
|
||||
[121] call plot param-assignment [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#3 line_xdyi::y#3 line_xdyi::e#3 ]
|
||||
to:line_xdyi::@5
|
||||
line_xdyi::@5: scope:[line_xdyi] from line_xdyi::@1
|
||||
[82] (byte) line_xdyi::x#1 ← (byte) line_xdyi::x#2 + (byte) 1 [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::y#2 line_xdyi::e#3 line_xdyi::x#1 ]
|
||||
[83] (byte) line_xdyi::e#1 ← (byte) line_xdyi::e#3 + (byte) line_xdyi::yd#0 [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::y#2 line_xdyi::x#1 line_xdyi::e#1 ]
|
||||
[84] if((byte) line_xdyi::xd#0>=(byte) line_xdyi::e#1) goto line_xdyi::@2 [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::y#2 line_xdyi::x#1 line_xdyi::e#1 ]
|
||||
[122] (byte) line_xdyi::x#2 ← (byte) line_xdyi::x#3 + (byte) 1 [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::y#3 line_xdyi::e#3 line_xdyi::x#2 ]
|
||||
[123] (byte) line_xdyi::e#1 ← (byte) line_xdyi::e#3 + (byte) line_xdyi::yd#2 [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::y#3 line_xdyi::x#2 line_xdyi::e#1 ]
|
||||
[124] if((byte) line_xdyi::xd#5>=(byte) line_xdyi::e#1) goto line_xdyi::@2 [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::y#3 line_xdyi::x#2 line_xdyi::e#1 ]
|
||||
to:line_xdyi::@3
|
||||
line_xdyi::@3: scope:[line_xdyi] from line_xdyi::@5
|
||||
[85] (byte) line_xdyi::y#1 ← (byte) line_xdyi::y#2 + (byte) 1 [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::x#1 line_xdyi::e#1 line_xdyi::y#1 ]
|
||||
[86] (byte) line_xdyi::e#2 ← (byte) line_xdyi::e#1 - (byte) line_xdyi::xd#0 [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::x#1 line_xdyi::y#1 line_xdyi::e#2 ]
|
||||
[125] (byte) line_xdyi::y#2 ← (byte) line_xdyi::y#3 + (byte) 1 [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#2 line_xdyi::e#1 line_xdyi::y#2 ]
|
||||
[126] (byte) line_xdyi::e#2 ← (byte) line_xdyi::e#1 - (byte) line_xdyi::xd#5 [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#2 line_xdyi::y#2 line_xdyi::e#2 ]
|
||||
to:line_xdyi::@2
|
||||
line_xdyi::@2: scope:[line_xdyi] from line_xdyi::@3 line_xdyi::@5
|
||||
[87] (byte) line_xdyi::e#6 ← phi( line_xdyi::@3/(byte) line_xdyi::e#2 line_xdyi::@5/(byte) line_xdyi::e#1 ) [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::x#1 line_xdyi::y#5 line_xdyi::e#6 ]
|
||||
[87] (byte) line_xdyi::y#5 ← phi( line_xdyi::@3/(byte) line_xdyi::y#1 line_xdyi::@5/(byte) line_xdyi::y#2 ) [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::x#1 line_xdyi::y#5 line_xdyi::e#6 ]
|
||||
[88] (byte~) line_xdyi::$8 ← (byte) line_xdyi::x1#0 + (byte) 1 [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::x#1 line_xdyi::y#5 line_xdyi::e#6 line_xdyi::$8 ]
|
||||
[89] if((byte) line_xdyi::x#1<(byte~) line_xdyi::$8) goto line_xdyi::@1 [ line_xdyi::x1#0 line_xdyi::xd#0 line_xdyi::yd#0 line_xdyi::x#1 line_xdyi::y#5 line_xdyi::e#6 ]
|
||||
[127] (byte) line_xdyi::e#6 ← phi( line_xdyi::@3/(byte) line_xdyi::e#2 line_xdyi::@5/(byte) line_xdyi::e#1 ) [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#2 line_xdyi::y#6 line_xdyi::e#6 ]
|
||||
[127] (byte) line_xdyi::y#6 ← phi( line_xdyi::@3/(byte) line_xdyi::y#2 line_xdyi::@5/(byte) line_xdyi::y#3 ) [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#2 line_xdyi::y#6 line_xdyi::e#6 ]
|
||||
[128] (byte~) line_xdyi::$8 ← (byte) line_xdyi::x1#6 + (byte) 1 [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#2 line_xdyi::y#6 line_xdyi::e#6 line_xdyi::$8 ]
|
||||
[129] if((byte) line_xdyi::x#2<(byte~) line_xdyi::$8) goto line_xdyi::@1 [ line_xdyi::yd#2 line_xdyi::xd#5 line_xdyi::x1#6 line_xdyi::x#2 line_xdyi::y#6 line_xdyi::e#6 ]
|
||||
to:line_xdyi::@return
|
||||
line_xdyi::@return: scope:[line_xdyi] from line_xdyi::@2
|
||||
[90] return [ ]
|
||||
[130] return [ ]
|
||||
to:@return
|
||||
line_ydxd: scope:[line_ydxd] from line::@10 line::@6
|
||||
[131] (byte) line_ydxd::y1#6 ← phi( line::@10/(byte) line_ydxd::y1#1 line::@6/(byte) line_ydxd::y1#0 ) [ line_ydxd::xd#2 line_ydxd::x#5 line_ydxd::y#6 line_ydxd::yd#5 line_ydxd::y1#6 ]
|
||||
[131] (byte) line_ydxd::yd#5 ← phi( line::@10/(byte) line_ydxd::yd#1 line::@6/(byte) line_ydxd::yd#0 ) [ line_ydxd::xd#2 line_ydxd::x#5 line_ydxd::y#6 line_ydxd::yd#5 line_ydxd::y1#6 ]
|
||||
[131] (byte) line_ydxd::y#6 ← phi( line::@10/(byte) line_ydxd::y#1 line::@6/(byte) line_ydxd::y#0 ) [ line_ydxd::xd#2 line_ydxd::x#5 line_ydxd::y#6 line_ydxd::yd#5 line_ydxd::y1#6 ]
|
||||
[131] (byte) line_ydxd::x#5 ← phi( line::@10/(byte) line_ydxd::x#1 line::@6/(byte) line_ydxd::x#0 ) [ line_ydxd::xd#2 line_ydxd::x#5 line_ydxd::y#6 line_ydxd::yd#5 line_ydxd::y1#6 ]
|
||||
[131] (byte) line_ydxd::xd#2 ← phi( line::@10/(byte) line_ydxd::xd#1 line::@6/(byte) line_ydxd::xd#0 ) [ line_ydxd::xd#2 line_ydxd::x#5 line_ydxd::y#6 line_ydxd::yd#5 line_ydxd::y1#6 ]
|
||||
[132] (byte) line_ydxd::e#0 ← (byte) line_ydxd::xd#2 >> (byte) 1 [ line_ydxd::xd#2 line_ydxd::x#5 line_ydxd::y#6 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::e#0 ]
|
||||
to:line_ydxd::@1
|
||||
line_ydxd::@1: scope:[line_ydxd] from line_ydxd line_ydxd::@2
|
||||
[133] (byte) line_ydxd::e#3 ← phi( line_ydxd/(byte) line_ydxd::e#0 line_ydxd::@2/(byte) line_ydxd::e#6 ) [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#3 line_ydxd::y#3 line_ydxd::e#3 ]
|
||||
[133] (byte) line_ydxd::y#3 ← phi( line_ydxd/(byte) line_ydxd::y#6 line_ydxd::@2/(byte) line_ydxd::y#2 ) [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#3 line_ydxd::y#3 line_ydxd::e#3 ]
|
||||
[133] (byte) line_ydxd::x#3 ← phi( line_ydxd/(byte) line_ydxd::x#5 line_ydxd::@2/(byte) line_ydxd::x#6 ) [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#3 line_ydxd::y#3 line_ydxd::e#3 ]
|
||||
[134] (byte) plot::x#3 ← (byte) line_ydxd::x#3 [ plot::x#3 line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#3 line_ydxd::y#3 line_ydxd::e#3 ]
|
||||
[135] (byte) plot::y#3 ← (byte) line_ydxd::y#3 [ plot::x#3 plot::y#3 line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#3 line_ydxd::y#3 line_ydxd::e#3 ]
|
||||
[136] call plot param-assignment [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#3 line_ydxd::y#3 line_ydxd::e#3 ]
|
||||
to:line_ydxd::@5
|
||||
line_ydxd::@5: scope:[line_ydxd] from line_ydxd::@1
|
||||
[137] (byte) line_ydxd::y#2 ← (byte) line_ydxd::y#3 + (byte) 1 [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#3 line_ydxd::e#3 line_ydxd::y#2 ]
|
||||
[138] (byte) line_ydxd::e#1 ← (byte) line_ydxd::e#3 + (byte) line_ydxd::xd#2 [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#3 line_ydxd::y#2 line_ydxd::e#1 ]
|
||||
[139] if((byte) line_ydxd::yd#5>=(byte) line_ydxd::e#1) goto line_ydxd::@2 [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#3 line_ydxd::y#2 line_ydxd::e#1 ]
|
||||
to:line_ydxd::@3
|
||||
line_ydxd::@3: scope:[line_ydxd] from line_ydxd::@5
|
||||
[140] (byte) line_ydxd::x#2 ← (byte) line_ydxd::x#3 - (byte) 1 [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::y#2 line_ydxd::e#1 line_ydxd::x#2 ]
|
||||
[141] (byte) line_ydxd::e#2 ← (byte) line_ydxd::e#1 - (byte) line_ydxd::yd#5 [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::y#2 line_ydxd::x#2 line_ydxd::e#2 ]
|
||||
to:line_ydxd::@2
|
||||
line_ydxd::@2: scope:[line_ydxd] from line_ydxd::@3 line_ydxd::@5
|
||||
[142] (byte) line_ydxd::e#6 ← phi( line_ydxd::@3/(byte) line_ydxd::e#2 line_ydxd::@5/(byte) line_ydxd::e#1 ) [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#6 line_ydxd::y#2 line_ydxd::e#6 ]
|
||||
[142] (byte) line_ydxd::x#6 ← phi( line_ydxd::@3/(byte) line_ydxd::x#2 line_ydxd::@5/(byte) line_ydxd::x#3 ) [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#6 line_ydxd::y#2 line_ydxd::e#6 ]
|
||||
[143] (byte~) line_ydxd::$8 ← (byte) line_ydxd::y1#6 + (byte) 1 [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#6 line_ydxd::y#2 line_ydxd::e#6 line_ydxd::$8 ]
|
||||
[144] if((byte) line_ydxd::y#2<(byte~) line_ydxd::$8) goto line_ydxd::@1 [ line_ydxd::xd#2 line_ydxd::yd#5 line_ydxd::y1#6 line_ydxd::x#6 line_ydxd::y#2 line_ydxd::e#6 ]
|
||||
to:line_ydxd::@return
|
||||
line_ydxd::@return: scope:[line_ydxd] from line_ydxd::@2
|
||||
[145] return [ ]
|
||||
to:@return
|
||||
line_xdyd: scope:[line_xdyd] from line::@20 line::@24
|
||||
[146] (byte) line_xdyd::x1#6 ← phi( line::@20/(byte) line_xdyd::x1#0 line::@24/(byte) line_xdyd::x1#1 ) [ line_xdyd::yd#2 line_xdyd::x#6 line_xdyd::y#5 line_xdyd::xd#5 line_xdyd::x1#6 ]
|
||||
[146] (byte) line_xdyd::xd#5 ← phi( line::@20/(byte) line_xdyd::xd#0 line::@24/(byte) line_xdyd::xd#1 ) [ line_xdyd::yd#2 line_xdyd::x#6 line_xdyd::y#5 line_xdyd::xd#5 line_xdyd::x1#6 ]
|
||||
[146] (byte) line_xdyd::y#5 ← phi( line::@20/(byte) line_xdyd::y#0 line::@24/(byte) line_xdyd::y#1 ) [ line_xdyd::yd#2 line_xdyd::x#6 line_xdyd::y#5 line_xdyd::xd#5 line_xdyd::x1#6 ]
|
||||
[146] (byte) line_xdyd::x#6 ← phi( line::@20/(byte) line_xdyd::x#0 line::@24/(byte) line_xdyd::x#1 ) [ line_xdyd::yd#2 line_xdyd::x#6 line_xdyd::y#5 line_xdyd::xd#5 line_xdyd::x1#6 ]
|
||||
[146] (byte) line_xdyd::yd#2 ← phi( line::@20/(byte) line_xdyd::yd#0 line::@24/(byte) line_xdyd::yd#1 ) [ line_xdyd::yd#2 line_xdyd::x#6 line_xdyd::y#5 line_xdyd::xd#5 line_xdyd::x1#6 ]
|
||||
[147] (byte) line_xdyd::e#0 ← (byte) line_xdyd::yd#2 >> (byte) 1 [ line_xdyd::yd#2 line_xdyd::x#6 line_xdyd::y#5 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::e#0 ]
|
||||
to:line_xdyd::@1
|
||||
line_xdyd::@1: scope:[line_xdyd] from line_xdyd line_xdyd::@2
|
||||
[148] (byte) line_xdyd::e#3 ← phi( line_xdyd/(byte) line_xdyd::e#0 line_xdyd::@2/(byte) line_xdyd::e#6 ) [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#3 line_xdyd::y#3 line_xdyd::e#3 ]
|
||||
[148] (byte) line_xdyd::y#3 ← phi( line_xdyd/(byte) line_xdyd::y#5 line_xdyd::@2/(byte) line_xdyd::y#6 ) [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#3 line_xdyd::y#3 line_xdyd::e#3 ]
|
||||
[148] (byte) line_xdyd::x#3 ← phi( line_xdyd/(byte) line_xdyd::x#6 line_xdyd::@2/(byte) line_xdyd::x#2 ) [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#3 line_xdyd::y#3 line_xdyd::e#3 ]
|
||||
[149] (byte) plot::x#1 ← (byte) line_xdyd::x#3 [ plot::x#1 line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#3 line_xdyd::y#3 line_xdyd::e#3 ]
|
||||
[150] (byte) plot::y#1 ← (byte) line_xdyd::y#3 [ plot::x#1 plot::y#1 line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#3 line_xdyd::y#3 line_xdyd::e#3 ]
|
||||
[151] call plot param-assignment [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#3 line_xdyd::y#3 line_xdyd::e#3 ]
|
||||
to:line_xdyd::@5
|
||||
line_xdyd::@5: scope:[line_xdyd] from line_xdyd::@1
|
||||
[152] (byte) line_xdyd::x#2 ← (byte) line_xdyd::x#3 + (byte) 1 [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::y#3 line_xdyd::e#3 line_xdyd::x#2 ]
|
||||
[153] (byte) line_xdyd::e#1 ← (byte) line_xdyd::e#3 + (byte) line_xdyd::yd#2 [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::y#3 line_xdyd::x#2 line_xdyd::e#1 ]
|
||||
[154] if((byte) line_xdyd::xd#5>=(byte) line_xdyd::e#1) goto line_xdyd::@2 [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::y#3 line_xdyd::x#2 line_xdyd::e#1 ]
|
||||
to:line_xdyd::@3
|
||||
line_xdyd::@3: scope:[line_xdyd] from line_xdyd::@5
|
||||
[155] (byte) line_xdyd::y#2 ← (byte) line_xdyd::y#3 - (byte) 1 [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#2 line_xdyd::e#1 line_xdyd::y#2 ]
|
||||
[156] (byte) line_xdyd::e#2 ← (byte) line_xdyd::e#1 - (byte) line_xdyd::xd#5 [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#2 line_xdyd::y#2 line_xdyd::e#2 ]
|
||||
to:line_xdyd::@2
|
||||
line_xdyd::@2: scope:[line_xdyd] from line_xdyd::@3 line_xdyd::@5
|
||||
[157] (byte) line_xdyd::e#6 ← phi( line_xdyd::@3/(byte) line_xdyd::e#2 line_xdyd::@5/(byte) line_xdyd::e#1 ) [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#2 line_xdyd::y#6 line_xdyd::e#6 ]
|
||||
[157] (byte) line_xdyd::y#6 ← phi( line_xdyd::@3/(byte) line_xdyd::y#2 line_xdyd::@5/(byte) line_xdyd::y#3 ) [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#2 line_xdyd::y#6 line_xdyd::e#6 ]
|
||||
[158] (byte~) line_xdyd::$8 ← (byte) line_xdyd::x1#6 + (byte) 1 [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#2 line_xdyd::y#6 line_xdyd::e#6 line_xdyd::$8 ]
|
||||
[159] if((byte) line_xdyd::x#2<(byte~) line_xdyd::$8) goto line_xdyd::@1 [ line_xdyd::yd#2 line_xdyd::xd#5 line_xdyd::x1#6 line_xdyd::x#2 line_xdyd::y#6 line_xdyd::e#6 ]
|
||||
to:line_xdyd::@return
|
||||
line_xdyd::@return: scope:[line_xdyd] from line_xdyd::@2
|
||||
[160] return [ ]
|
||||
to:@return
|
||||
init_plot_tables: scope:[init_plot_tables] from main::@3
|
||||
[91] phi() [ ]
|
||||
[161] phi() [ ]
|
||||
to:init_plot_tables::@1
|
||||
init_plot_tables::@1: scope:[init_plot_tables] from init_plot_tables init_plot_tables::@2
|
||||
[92] (byte) init_plot_tables::bit#3 ← phi( init_plot_tables/(byte) 128 init_plot_tables::@2/(byte) init_plot_tables::bit#4 ) [ init_plot_tables::x#2 init_plot_tables::bit#3 ]
|
||||
[92] (byte) init_plot_tables::x#2 ← phi( init_plot_tables/(byte) 0 init_plot_tables::@2/(byte) init_plot_tables::x#1 ) [ init_plot_tables::x#2 init_plot_tables::bit#3 ]
|
||||
[93] (byte~) init_plot_tables::$0 ← (byte) init_plot_tables::x#2 & (byte) 248 [ init_plot_tables::x#2 init_plot_tables::bit#3 init_plot_tables::$0 ]
|
||||
[94] *((const byte[]) plot_xlo#0 + (byte) init_plot_tables::x#2) ← (byte~) init_plot_tables::$0 [ init_plot_tables::x#2 init_plot_tables::bit#3 ]
|
||||
[95] *((const byte[]) plot_xhi#0 + (byte) init_plot_tables::x#2) ← >(const byte*) BITMAP#0 [ init_plot_tables::x#2 init_plot_tables::bit#3 ]
|
||||
[96] *((const byte[]) plot_bit#0 + (byte) init_plot_tables::x#2) ← (byte) init_plot_tables::bit#3 [ init_plot_tables::x#2 init_plot_tables::bit#3 ]
|
||||
[97] (byte) init_plot_tables::bit#1 ← (byte) init_plot_tables::bit#3 >> (byte) 1 [ init_plot_tables::x#2 init_plot_tables::bit#1 ]
|
||||
[98] if((byte) init_plot_tables::bit#1!=(byte) 0) goto init_plot_tables::@10 [ init_plot_tables::x#2 ]
|
||||
[162] (byte) init_plot_tables::bit#3 ← phi( init_plot_tables/(byte) 128 init_plot_tables::@2/(byte) init_plot_tables::bit#4 ) [ init_plot_tables::x#2 init_plot_tables::bit#3 ]
|
||||
[162] (byte) init_plot_tables::x#2 ← phi( init_plot_tables/(byte) 0 init_plot_tables::@2/(byte) init_plot_tables::x#1 ) [ init_plot_tables::x#2 init_plot_tables::bit#3 ]
|
||||
[163] (byte~) init_plot_tables::$0 ← (byte) init_plot_tables::x#2 & (byte) 248 [ init_plot_tables::x#2 init_plot_tables::bit#3 init_plot_tables::$0 ]
|
||||
[164] *((const byte[]) plot_xlo#0 + (byte) init_plot_tables::x#2) ← (byte~) init_plot_tables::$0 [ init_plot_tables::x#2 init_plot_tables::bit#3 ]
|
||||
[165] *((const byte[]) plot_xhi#0 + (byte) init_plot_tables::x#2) ← >(const byte*) BITMAP#0 [ init_plot_tables::x#2 init_plot_tables::bit#3 ]
|
||||
[166] *((const byte[]) plot_bit#0 + (byte) init_plot_tables::x#2) ← (byte) init_plot_tables::bit#3 [ init_plot_tables::x#2 init_plot_tables::bit#3 ]
|
||||
[167] (byte) init_plot_tables::bit#1 ← (byte) init_plot_tables::bit#3 >> (byte) 1 [ init_plot_tables::x#2 init_plot_tables::bit#1 ]
|
||||
[168] if((byte) init_plot_tables::bit#1!=(byte) 0) goto init_plot_tables::@10 [ init_plot_tables::x#2 ]
|
||||
to:init_plot_tables::@2
|
||||
init_plot_tables::@2: scope:[init_plot_tables] from init_plot_tables::@1 init_plot_tables::@10
|
||||
[99] (byte) init_plot_tables::bit#4 ← phi( init_plot_tables::@10/(byte) init_plot_tables::bit#1 init_plot_tables::@1/(byte) 128 ) [ init_plot_tables::x#2 init_plot_tables::bit#4 ]
|
||||
[100] (byte) init_plot_tables::x#1 ← ++ (byte) init_plot_tables::x#2 [ init_plot_tables::x#1 init_plot_tables::bit#4 ]
|
||||
[101] if((byte) init_plot_tables::x#1!=(byte) 0) goto init_plot_tables::@1 [ init_plot_tables::x#1 init_plot_tables::bit#4 ]
|
||||
[169] (byte) init_plot_tables::bit#4 ← phi( init_plot_tables::@10/(byte) init_plot_tables::bit#1 init_plot_tables::@1/(byte) 128 ) [ init_plot_tables::x#2 init_plot_tables::bit#4 ]
|
||||
[170] (byte) init_plot_tables::x#1 ← ++ (byte) init_plot_tables::x#2 [ init_plot_tables::x#1 init_plot_tables::bit#4 ]
|
||||
[171] if((byte) init_plot_tables::x#1!=(byte) 0) goto init_plot_tables::@1 [ init_plot_tables::x#1 init_plot_tables::bit#4 ]
|
||||
to:init_plot_tables::@3
|
||||
init_plot_tables::@3: scope:[init_plot_tables] from init_plot_tables::@2 init_plot_tables::@4
|
||||
[102] (byte*) init_plot_tables::yoffs#2 ← phi( init_plot_tables::@4/(byte*) init_plot_tables::yoffs#4 init_plot_tables::@2/(byte) 0 ) [ init_plot_tables::y#2 init_plot_tables::yoffs#2 ]
|
||||
[102] (byte) init_plot_tables::y#2 ← phi( init_plot_tables::@4/(byte) init_plot_tables::y#1 init_plot_tables::@2/(byte) 0 ) [ init_plot_tables::y#2 init_plot_tables::yoffs#2 ]
|
||||
[103] (byte~) init_plot_tables::$6 ← (byte) init_plot_tables::y#2 & (byte) 7 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 init_plot_tables::$6 ]
|
||||
[104] (byte~) init_plot_tables::$7 ← < (byte*) init_plot_tables::yoffs#2 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 init_plot_tables::$6 init_plot_tables::$7 ]
|
||||
[105] (byte~) init_plot_tables::$8 ← (byte~) init_plot_tables::$6 | (byte~) init_plot_tables::$7 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 init_plot_tables::$8 ]
|
||||
[106] *((const byte[]) plot_ylo#0 + (byte) init_plot_tables::y#2) ← (byte~) init_plot_tables::$8 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 ]
|
||||
[107] (byte~) init_plot_tables::$9 ← > (byte*) init_plot_tables::yoffs#2 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 init_plot_tables::$9 ]
|
||||
[108] *((const byte[]) plot_yhi#0 + (byte) init_plot_tables::y#2) ← (byte~) init_plot_tables::$9 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 ]
|
||||
[109] (byte~) init_plot_tables::$10 ← (byte) init_plot_tables::y#2 & (byte) 7 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 init_plot_tables::$10 ]
|
||||
[110] if((byte~) init_plot_tables::$10!=(byte) 7) goto init_plot_tables::@4 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 ]
|
||||
[172] (byte*) init_plot_tables::yoffs#2 ← phi( init_plot_tables::@4/(byte*) init_plot_tables::yoffs#4 init_plot_tables::@2/(byte) 0 ) [ init_plot_tables::y#2 init_plot_tables::yoffs#2 ]
|
||||
[172] (byte) init_plot_tables::y#2 ← phi( init_plot_tables::@4/(byte) init_plot_tables::y#1 init_plot_tables::@2/(byte) 0 ) [ init_plot_tables::y#2 init_plot_tables::yoffs#2 ]
|
||||
[173] (byte~) init_plot_tables::$6 ← (byte) init_plot_tables::y#2 & (byte) 7 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 init_plot_tables::$6 ]
|
||||
[174] (byte~) init_plot_tables::$7 ← < (byte*) init_plot_tables::yoffs#2 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 init_plot_tables::$6 init_plot_tables::$7 ]
|
||||
[175] (byte~) init_plot_tables::$8 ← (byte~) init_plot_tables::$6 | (byte~) init_plot_tables::$7 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 init_plot_tables::$8 ]
|
||||
[176] *((const byte[]) plot_ylo#0 + (byte) init_plot_tables::y#2) ← (byte~) init_plot_tables::$8 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 ]
|
||||
[177] (byte~) init_plot_tables::$9 ← > (byte*) init_plot_tables::yoffs#2 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 init_plot_tables::$9 ]
|
||||
[178] *((const byte[]) plot_yhi#0 + (byte) init_plot_tables::y#2) ← (byte~) init_plot_tables::$9 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 ]
|
||||
[179] (byte~) init_plot_tables::$10 ← (byte) init_plot_tables::y#2 & (byte) 7 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 init_plot_tables::$10 ]
|
||||
[180] if((byte~) init_plot_tables::$10!=(byte) 7) goto init_plot_tables::@4 [ init_plot_tables::y#2 init_plot_tables::yoffs#2 ]
|
||||
to:init_plot_tables::@7
|
||||
init_plot_tables::@7: scope:[init_plot_tables] from init_plot_tables::@3
|
||||
[111] (byte*) init_plot_tables::yoffs#1 ← (byte*) init_plot_tables::yoffs#2 + (word) 320 [ init_plot_tables::y#2 init_plot_tables::yoffs#1 ]
|
||||
[181] (byte*) init_plot_tables::yoffs#1 ← (byte*) init_plot_tables::yoffs#2 + (word) 320 [ init_plot_tables::y#2 init_plot_tables::yoffs#1 ]
|
||||
to:init_plot_tables::@4
|
||||
init_plot_tables::@4: scope:[init_plot_tables] from init_plot_tables::@3 init_plot_tables::@7
|
||||
[112] (byte*) init_plot_tables::yoffs#4 ← phi( init_plot_tables::@3/(byte*) init_plot_tables::yoffs#2 init_plot_tables::@7/(byte*) init_plot_tables::yoffs#1 ) [ init_plot_tables::y#2 init_plot_tables::yoffs#4 ]
|
||||
[113] (byte) init_plot_tables::y#1 ← ++ (byte) init_plot_tables::y#2 [ init_plot_tables::y#1 init_plot_tables::yoffs#4 ]
|
||||
[114] if((byte) init_plot_tables::y#1!=(byte) 0) goto init_plot_tables::@3 [ init_plot_tables::y#1 init_plot_tables::yoffs#4 ]
|
||||
[182] (byte*) init_plot_tables::yoffs#4 ← phi( init_plot_tables::@3/(byte*) init_plot_tables::yoffs#2 init_plot_tables::@7/(byte*) init_plot_tables::yoffs#1 ) [ init_plot_tables::y#2 init_plot_tables::yoffs#4 ]
|
||||
[183] (byte) init_plot_tables::y#1 ← ++ (byte) init_plot_tables::y#2 [ init_plot_tables::y#1 init_plot_tables::yoffs#4 ]
|
||||
[184] if((byte) init_plot_tables::y#1!=(byte) 0) goto init_plot_tables::@3 [ init_plot_tables::y#1 init_plot_tables::yoffs#4 ]
|
||||
to:init_plot_tables::@return
|
||||
init_plot_tables::@return: scope:[init_plot_tables] from init_plot_tables::@4
|
||||
[115] return [ ]
|
||||
[185] return [ ]
|
||||
to:@return
|
||||
init_plot_tables::@10: scope:[init_plot_tables] from init_plot_tables::@1
|
||||
to:init_plot_tables::@2
|
||||
init_screen: scope:[init_screen] from main
|
||||
[116] phi() [ ]
|
||||
[186] phi() [ ]
|
||||
to:init_screen::@1
|
||||
init_screen::@1: scope:[init_screen] from init_screen init_screen::@1
|
||||
[117] (byte*) init_screen::b#2 ← phi( init_screen/(const byte*) BITMAP#0 init_screen::@1/(byte*) init_screen::b#1 ) [ init_screen::b#2 ]
|
||||
[118] *((byte*) init_screen::b#2) ← (byte) 0 [ init_screen::b#2 ]
|
||||
[119] (byte*) init_screen::b#1 ← ++ (byte*) init_screen::b#2 [ init_screen::b#1 ]
|
||||
[120] if((byte*) init_screen::b#1!=(const byte*) BITMAP#0+(word) 8192) goto init_screen::@1 [ init_screen::b#1 ]
|
||||
[187] (byte*) init_screen::b#2 ← phi( init_screen/(const byte*) BITMAP#0 init_screen::@1/(byte*) init_screen::b#1 ) [ init_screen::b#2 ]
|
||||
[188] *((byte*) init_screen::b#2) ← (byte) 0 [ init_screen::b#2 ]
|
||||
[189] (byte*) init_screen::b#1 ← ++ (byte*) init_screen::b#2 [ init_screen::b#1 ]
|
||||
[190] if((byte*) init_screen::b#1!=(const byte*) BITMAP#0+(word) 8192) goto init_screen::@1 [ init_screen::b#1 ]
|
||||
to:init_screen::@2
|
||||
init_screen::@2: scope:[init_screen] from init_screen::@1 init_screen::@2
|
||||
[121] (byte*) init_screen::c#2 ← phi( init_screen::@2/(byte*) init_screen::c#1 init_screen::@1/(const byte*) SCREEN#0 ) [ init_screen::c#2 ]
|
||||
[122] *((byte*) init_screen::c#2) ← (byte) 20 [ init_screen::c#2 ]
|
||||
[123] (byte*) init_screen::c#1 ← ++ (byte*) init_screen::c#2 [ init_screen::c#1 ]
|
||||
[124] if((byte*) init_screen::c#1!=(const byte*) SCREEN#0+(word) 1024) goto init_screen::@2 [ init_screen::c#1 ]
|
||||
[191] (byte*) init_screen::c#2 ← phi( init_screen::@2/(byte*) init_screen::c#1 init_screen::@1/(const byte*) SCREEN#0 ) [ init_screen::c#2 ]
|
||||
[192] *((byte*) init_screen::c#2) ← (byte) 20 [ init_screen::c#2 ]
|
||||
[193] (byte*) init_screen::c#1 ← ++ (byte*) init_screen::c#2 [ init_screen::c#1 ]
|
||||
[194] if((byte*) init_screen::c#1!=(const byte*) SCREEN#0+(word) 1024) goto init_screen::@2 [ init_screen::c#1 ]
|
||||
to:init_screen::@return
|
||||
init_screen::@return: scope:[init_screen] from init_screen::@2
|
||||
[125] return [ ]
|
||||
[195] return [ ]
|
||||
to:@return
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
(label) @7
|
||||
(label) @10
|
||||
(label) @begin
|
||||
(label) @end
|
||||
(byte*) BGCOL
|
||||
@ -58,46 +58,89 @@
|
||||
(byte) init_plot_tables::y#1 reg byte x 16.5
|
||||
(byte) init_plot_tables::y#2 reg byte x 6.0
|
||||
(byte*) init_plot_tables::yoffs
|
||||
(byte*) init_plot_tables::yoffs#1 yoffs zp ZP_PTR_BYTE:6 22.0
|
||||
(byte*) init_plot_tables::yoffs#2 yoffs zp ZP_PTR_BYTE:6 6.111111111111112
|
||||
(byte*) init_plot_tables::yoffs#4 yoffs zp ZP_PTR_BYTE:6 11.0
|
||||
(byte*) init_plot_tables::yoffs#1 yoffs zp ZP_PTR_BYTE:27 22.0
|
||||
(byte*) init_plot_tables::yoffs#2 yoffs zp ZP_PTR_BYTE:27 6.111111111111112
|
||||
(byte*) init_plot_tables::yoffs#4 yoffs zp ZP_PTR_BYTE:27 11.0
|
||||
(void()) init_screen()
|
||||
(label) init_screen::@1
|
||||
(label) init_screen::@2
|
||||
(label) init_screen::@return
|
||||
(byte*) init_screen::b
|
||||
(byte*) init_screen::b#1 b zp ZP_PTR_BYTE:6 16.5
|
||||
(byte*) init_screen::b#2 b zp ZP_PTR_BYTE:6 16.5
|
||||
(byte*) init_screen::b#1 b zp ZP_PTR_BYTE:27 16.5
|
||||
(byte*) init_screen::b#2 b zp ZP_PTR_BYTE:27 16.5
|
||||
(byte*) init_screen::c
|
||||
(byte*) init_screen::c#1 c zp ZP_PTR_BYTE:6 16.5
|
||||
(byte*) init_screen::c#2 c zp ZP_PTR_BYTE:6 16.5
|
||||
(byte*) init_screen::c#1 c zp ZP_PTR_BYTE:27 16.5
|
||||
(byte*) init_screen::c#2 c zp ZP_PTR_BYTE:27 16.5
|
||||
(void()) line((byte) line::x0 , (byte) line::x1 , (byte) line::y0 , (byte) line::y1)
|
||||
(label) line::@1
|
||||
(label) line::@10
|
||||
(label) line::@11
|
||||
(label) line::@13
|
||||
(label) line::@15
|
||||
(label) line::@16
|
||||
(label) line::@17
|
||||
(label) line::@19
|
||||
(label) line::@2
|
||||
(label) line::@22
|
||||
(label) line::@20
|
||||
(label) line::@23
|
||||
(label) line::@24
|
||||
(label) line::@27
|
||||
(label) line::@3
|
||||
(label) line::@7
|
||||
(label) line::@6
|
||||
(label) line::@9
|
||||
(label) line::@return
|
||||
(byte) line::x0
|
||||
(byte) line::x0#0 x0 zp ZP_BYTE:5 10.636363636363635
|
||||
(byte) line::x0#0 x0 zp ZP_BYTE:5 5.173913043478264
|
||||
(byte) line::x1
|
||||
(byte) line::x1#0 x1 zp ZP_BYTE:8 4.874999999999997
|
||||
(byte) line::x1#0 reg byte y 5.409090909090908
|
||||
(byte) line::xd
|
||||
(byte) line::xd#0 reg byte a 20.0
|
||||
(byte) line::xd#1 xd zp ZP_BYTE:10 0.8571428571428571
|
||||
(byte) line::xd#0 xd zp ZP_BYTE:8 0.7
|
||||
(byte) line::xd#1 xd zp ZP_BYTE:8 0.7
|
||||
(byte) line::y0
|
||||
(byte) line::y0#0 reg byte y 8.357142857142858
|
||||
(byte) line::y0#0 y0 zp ZP_BYTE:3 5.952380952380948
|
||||
(byte) line::y1
|
||||
(byte) line::y1#0 y1 zp ZP_BYTE:9 4.791666666666664
|
||||
(byte) line::y1#0 reg byte x 6.249999999999996
|
||||
(byte) line::yd
|
||||
(byte) line::yd#0 reg byte x 1.0
|
||||
(byte) line::yd#0 yd zp ZP_BYTE:4 0.8888888888888888
|
||||
(byte) line::yd#1 yd zp ZP_BYTE:4 0.8888888888888888
|
||||
(byte) line::yd#10 yd zp ZP_BYTE:4 0.8888888888888888
|
||||
(byte) line::yd#3 yd zp ZP_BYTE:4 0.8888888888888888
|
||||
(void()) line_xdyd((byte) line_xdyd::x , (byte) line_xdyd::y , (byte) line_xdyd::x1 , (byte) line_xdyd::xd , (byte) line_xdyd::yd)
|
||||
(byte~) line_xdyd::$8 reg byte a 22.0
|
||||
(label) line_xdyd::@1
|
||||
(label) line_xdyd::@2
|
||||
(label) line_xdyd::@3
|
||||
(label) line_xdyd::@5
|
||||
(label) line_xdyd::@return
|
||||
(byte) line_xdyd::e
|
||||
(byte) line_xdyd::e#0 e zp ZP_BYTE:26 4.0
|
||||
(byte) line_xdyd::e#1 e zp ZP_BYTE:26 14.666666666666666
|
||||
(byte) line_xdyd::e#2 e zp ZP_BYTE:26 22.0
|
||||
(byte) line_xdyd::e#3 e zp ZP_BYTE:26 4.800000000000001
|
||||
(byte) line_xdyd::e#6 e zp ZP_BYTE:26 11.0
|
||||
(byte) line_xdyd::x
|
||||
(byte) line_xdyd::x#0 x zp ZP_BYTE:24 0.8
|
||||
(byte) line_xdyd::x#1 x zp ZP_BYTE:24 0.8
|
||||
(byte) line_xdyd::x#2 x zp ZP_BYTE:24 4.125
|
||||
(byte) line_xdyd::x#3 x zp ZP_BYTE:24 8.75
|
||||
(byte) line_xdyd::x#6 x zp ZP_BYTE:24 3.0
|
||||
(byte) line_xdyd::x1
|
||||
(byte) line_xdyd::x1#0 x1 zp ZP_BYTE:23 1.3333333333333333
|
||||
(byte) line_xdyd::x1#1 x1 zp ZP_BYTE:23 1.3333333333333333
|
||||
(byte) line_xdyd::x1#6 x1 zp ZP_BYTE:23 1.0714285714285714
|
||||
(byte) line_xdyd::xd
|
||||
(byte) line_xdyd::xd#0 xd zp ZP_BYTE:22 2.0
|
||||
(byte) line_xdyd::xd#1 xd zp ZP_BYTE:22 2.0
|
||||
(byte) line_xdyd::xd#5 xd zp ZP_BYTE:22 1.8571428571428572
|
||||
(byte) line_xdyd::y
|
||||
(byte) line_xdyd::y#0 y zp ZP_BYTE:25 1.0
|
||||
(byte) line_xdyd::y#1 y zp ZP_BYTE:25 1.0
|
||||
(byte) line_xdyd::y#2 y zp ZP_BYTE:25 11.0
|
||||
(byte) line_xdyd::y#3 y zp ZP_BYTE:25 6.571428571428571
|
||||
(byte) line_xdyd::y#5 y zp ZP_BYTE:25 3.0
|
||||
(byte) line_xdyd::y#6 y zp ZP_BYTE:25 11.0
|
||||
(byte) line_xdyd::yd
|
||||
(byte) line_xdyd::yd#0 yd zp ZP_BYTE:21 4.0
|
||||
(byte) line_xdyd::yd#1 yd zp ZP_BYTE:21 4.0
|
||||
(byte) line_xdyd::yd#2 yd zp ZP_BYTE:21 1.2142857142857142
|
||||
(void()) line_xdyi((byte) line_xdyi::x , (byte) line_xdyi::y , (byte) line_xdyi::x1 , (byte) line_xdyi::xd , (byte) line_xdyi::yd)
|
||||
(byte~) line_xdyi::$8 reg byte a 22.0
|
||||
(label) line_xdyi::@1
|
||||
@ -106,26 +149,112 @@
|
||||
(label) line_xdyi::@5
|
||||
(label) line_xdyi::@return
|
||||
(byte) line_xdyi::e
|
||||
(byte) line_xdyi::e#0 e zp ZP_BYTE:5 4.0
|
||||
(byte) line_xdyi::e#1 e zp ZP_BYTE:5 14.666666666666666
|
||||
(byte) line_xdyi::e#2 e zp ZP_BYTE:5 22.0
|
||||
(byte) line_xdyi::e#3 e zp ZP_BYTE:5 4.800000000000001
|
||||
(byte) line_xdyi::e#6 e zp ZP_BYTE:5 11.0
|
||||
(byte) line_xdyi::e#0 e zp ZP_BYTE:14 4.0
|
||||
(byte) line_xdyi::e#1 e zp ZP_BYTE:14 14.666666666666666
|
||||
(byte) line_xdyi::e#2 e zp ZP_BYTE:14 22.0
|
||||
(byte) line_xdyi::e#3 e zp ZP_BYTE:14 4.800000000000001
|
||||
(byte) line_xdyi::e#6 e zp ZP_BYTE:14 11.0
|
||||
(byte) line_xdyi::x
|
||||
(byte) line_xdyi::x#0 x zp ZP_BYTE:3 0.6666666666666666
|
||||
(byte) line_xdyi::x#1 x zp ZP_BYTE:3 4.125
|
||||
(byte) line_xdyi::x#2 x zp ZP_BYTE:3 8.75
|
||||
(byte) line_xdyi::x#0 x zp ZP_BYTE:12 0.8
|
||||
(byte) line_xdyi::x#1 x zp ZP_BYTE:12 0.8
|
||||
(byte) line_xdyi::x#2 x zp ZP_BYTE:12 4.125
|
||||
(byte) line_xdyi::x#3 x zp ZP_BYTE:12 8.75
|
||||
(byte) line_xdyi::x#6 x zp ZP_BYTE:12 3.0
|
||||
(byte) line_xdyi::x1
|
||||
(byte) line_xdyi::x1#0 x1 zp ZP_BYTE:11 0.8125
|
||||
(byte) line_xdyi::x1#0 x1 zp ZP_BYTE:11 1.3333333333333333
|
||||
(byte) line_xdyi::x1#1 x1 zp ZP_BYTE:11 1.3333333333333333
|
||||
(byte) line_xdyi::x1#6 x1 zp ZP_BYTE:11 1.0714285714285714
|
||||
(byte) line_xdyi::xd
|
||||
(byte) line_xdyi::xd#0 xd zp ZP_BYTE:10 1.5999999999999999
|
||||
(byte) line_xdyi::xd#0 xd zp ZP_BYTE:10 2.0
|
||||
(byte) line_xdyi::xd#1 xd zp ZP_BYTE:10 2.0
|
||||
(byte) line_xdyi::xd#5 xd zp ZP_BYTE:10 1.8571428571428572
|
||||
(byte) line_xdyi::y
|
||||
(byte) line_xdyi::y#0 y zp ZP_BYTE:4 0.8
|
||||
(byte) line_xdyi::y#1 y zp ZP_BYTE:4 11.0
|
||||
(byte) line_xdyi::y#2 y zp ZP_BYTE:4 6.571428571428571
|
||||
(byte) line_xdyi::y#5 y zp ZP_BYTE:4 11.0
|
||||
(byte) line_xdyi::y#0 y zp ZP_BYTE:13 1.0
|
||||
(byte) line_xdyi::y#1 y zp ZP_BYTE:13 1.0
|
||||
(byte) line_xdyi::y#2 y zp ZP_BYTE:13 11.0
|
||||
(byte) line_xdyi::y#3 y zp ZP_BYTE:13 6.571428571428571
|
||||
(byte) line_xdyi::y#5 y zp ZP_BYTE:13 3.0
|
||||
(byte) line_xdyi::y#6 y zp ZP_BYTE:13 11.0
|
||||
(byte) line_xdyi::yd
|
||||
(byte) line_xdyi::yd#0 yd zp ZP_BYTE:12 1.0714285714285714
|
||||
(byte) line_xdyi::yd#0 yd zp ZP_BYTE:9 4.0
|
||||
(byte) line_xdyi::yd#1 yd zp ZP_BYTE:9 4.0
|
||||
(byte) line_xdyi::yd#2 yd zp ZP_BYTE:9 1.2142857142857142
|
||||
(void()) line_ydxd((byte) line_ydxd::y , (byte) line_ydxd::x , (byte) line_ydxd::y1 , (byte) line_ydxd::yd , (byte) line_ydxd::xd)
|
||||
(byte~) line_ydxd::$8 reg byte a 22.0
|
||||
(label) line_ydxd::@1
|
||||
(label) line_ydxd::@2
|
||||
(label) line_ydxd::@3
|
||||
(label) line_ydxd::@5
|
||||
(label) line_ydxd::@return
|
||||
(byte) line_ydxd::e
|
||||
(byte) line_ydxd::e#0 e zp ZP_BYTE:20 4.0
|
||||
(byte) line_ydxd::e#1 e zp ZP_BYTE:20 14.666666666666666
|
||||
(byte) line_ydxd::e#2 e zp ZP_BYTE:20 22.0
|
||||
(byte) line_ydxd::e#3 e zp ZP_BYTE:20 4.800000000000001
|
||||
(byte) line_ydxd::e#6 e zp ZP_BYTE:20 11.0
|
||||
(byte) line_ydxd::x
|
||||
(byte) line_ydxd::x#0 x zp ZP_BYTE:18 1.0
|
||||
(byte) line_ydxd::x#1 x zp ZP_BYTE:18 1.0
|
||||
(byte) line_ydxd::x#2 x zp ZP_BYTE:18 11.0
|
||||
(byte) line_ydxd::x#3 x zp ZP_BYTE:18 6.571428571428571
|
||||
(byte) line_ydxd::x#5 x zp ZP_BYTE:18 3.0
|
||||
(byte) line_ydxd::x#6 x zp ZP_BYTE:18 11.0
|
||||
(byte) line_ydxd::xd
|
||||
(byte) line_ydxd::xd#0 xd zp ZP_BYTE:15 4.0
|
||||
(byte) line_ydxd::xd#1 xd zp ZP_BYTE:15 4.0
|
||||
(byte) line_ydxd::xd#2 xd zp ZP_BYTE:15 1.2142857142857142
|
||||
(byte) line_ydxd::y
|
||||
(byte) line_ydxd::y#0 y zp ZP_BYTE:19 0.8
|
||||
(byte) line_ydxd::y#1 y zp ZP_BYTE:19 0.8
|
||||
(byte) line_ydxd::y#2 y zp ZP_BYTE:19 4.125
|
||||
(byte) line_ydxd::y#3 y zp ZP_BYTE:19 8.75
|
||||
(byte) line_ydxd::y#6 y zp ZP_BYTE:19 3.0
|
||||
(byte) line_ydxd::y1
|
||||
(byte) line_ydxd::y1#0 y1 zp ZP_BYTE:17 1.3333333333333333
|
||||
(byte) line_ydxd::y1#1 y1 zp ZP_BYTE:17 1.3333333333333333
|
||||
(byte) line_ydxd::y1#6 y1 zp ZP_BYTE:17 1.0714285714285714
|
||||
(byte) line_ydxd::yd
|
||||
(byte) line_ydxd::yd#0 yd zp ZP_BYTE:16 2.0
|
||||
(byte) line_ydxd::yd#1 yd zp ZP_BYTE:16 2.0
|
||||
(byte) line_ydxd::yd#5 yd zp ZP_BYTE:16 1.8571428571428572
|
||||
(void()) line_ydxi((byte) line_ydxi::y , (byte) line_ydxi::x , (byte) line_ydxi::y1 , (byte) line_ydxi::yd , (byte) line_ydxi::xd)
|
||||
(byte~) line_ydxi::$8 reg byte a 22.0
|
||||
(label) line_ydxi::@1
|
||||
(label) line_ydxi::@2
|
||||
(label) line_ydxi::@3
|
||||
(label) line_ydxi::@5
|
||||
(label) line_ydxi::@return
|
||||
(byte) line_ydxi::e
|
||||
(byte) line_ydxi::e#0 e zp ZP_BYTE:8 4.0
|
||||
(byte) line_ydxi::e#1 e zp ZP_BYTE:8 14.666666666666666
|
||||
(byte) line_ydxi::e#2 e zp ZP_BYTE:8 22.0
|
||||
(byte) line_ydxi::e#3 e zp ZP_BYTE:8 4.800000000000001
|
||||
(byte) line_ydxi::e#6 e zp ZP_BYTE:8 11.0
|
||||
(byte) line_ydxi::x
|
||||
(byte) line_ydxi::x#0 x zp ZP_BYTE:6 1.0
|
||||
(byte) line_ydxi::x#1 x zp ZP_BYTE:6 1.0
|
||||
(byte) line_ydxi::x#2 x zp ZP_BYTE:6 11.0
|
||||
(byte) line_ydxi::x#3 x zp ZP_BYTE:6 6.571428571428571
|
||||
(byte) line_ydxi::x#5 x zp ZP_BYTE:6 3.0
|
||||
(byte) line_ydxi::x#6 x zp ZP_BYTE:6 11.0
|
||||
(byte) line_ydxi::xd
|
||||
(byte) line_ydxi::xd#0 xd zp ZP_BYTE:3 4.0
|
||||
(byte) line_ydxi::xd#1 xd zp ZP_BYTE:3 4.0
|
||||
(byte) line_ydxi::xd#2 xd zp ZP_BYTE:3 1.2142857142857142
|
||||
(byte) line_ydxi::y
|
||||
(byte) line_ydxi::y#0 y zp ZP_BYTE:7 0.8
|
||||
(byte) line_ydxi::y#1 y zp ZP_BYTE:7 0.8
|
||||
(byte) line_ydxi::y#2 y zp ZP_BYTE:7 4.125
|
||||
(byte) line_ydxi::y#3 y zp ZP_BYTE:7 8.75
|
||||
(byte) line_ydxi::y#6 y zp ZP_BYTE:7 3.0
|
||||
(byte) line_ydxi::y1
|
||||
(byte) line_ydxi::y1#0 y1 zp ZP_BYTE:5 1.3333333333333333
|
||||
(byte) line_ydxi::y1#1 y1 zp ZP_BYTE:5 1.3333333333333333
|
||||
(byte) line_ydxi::y1#6 y1 zp ZP_BYTE:5 1.0714285714285714
|
||||
(byte) line_ydxi::yd
|
||||
(byte) line_ydxi::yd#0 yd zp ZP_BYTE:4 2.0
|
||||
(byte) line_ydxi::yd#1 yd zp ZP_BYTE:4 2.0
|
||||
(byte) line_ydxi::yd#5 yd zp ZP_BYTE:4 1.8571428571428572
|
||||
(void()) lines()
|
||||
(byte~) lines::$0 reg byte y 50.5
|
||||
(byte~) lines::$2 $2 zp ZP_BYTE:3 50.5
|
||||
@ -153,40 +282,30 @@
|
||||
(byte~) plot::$1 reg byte a 4.0
|
||||
(byte~) plot::$2 reg byte a 4.0
|
||||
(byte~) plot::$3 reg byte a 4.0
|
||||
(byte~) plot::$5 $5 zp ZP_BYTE:15 2.0
|
||||
(byte~) plot::$5 $5 zp ZP_BYTE:31 2.0
|
||||
(byte~) plot::$6 reg byte a 4.0
|
||||
(byte~) plot::$7 reg byte a 4.0
|
||||
(label) plot::@return
|
||||
(byte*) plot::plotter
|
||||
(byte*) plot::plotter#0 plotter zp ZP_PTR_BYTE:6 1.5
|
||||
(byte*) plot::plotter#0 plotter zp ZP_PTR_BYTE:27 1.5
|
||||
(byte*) plot::plotter_x
|
||||
(byte*) plot::plotter_x#1 plotter_x zp ZP_PTR_BYTE:6 2.0
|
||||
(byte*) plot::plotter_x#2 plotter_x zp ZP_PTR_BYTE:6 0.8
|
||||
(byte*) plot::plotter_x#1 plotter_x zp ZP_PTR_BYTE:27 2.0
|
||||
(byte*) plot::plotter_x#2 plotter_x zp ZP_PTR_BYTE:27 0.8
|
||||
(byte*) plot::plotter_y
|
||||
(byte*) plot::plotter_y#1 plotter_y zp ZP_PTR_BYTE:13 2.0
|
||||
(byte*) plot::plotter_y#2 plotter_y zp ZP_PTR_BYTE:13 4.0
|
||||
(byte*) plot::plotter_y#1 plotter_y zp ZP_PTR_BYTE:29 2.0
|
||||
(byte*) plot::plotter_y#2 plotter_y zp ZP_PTR_BYTE:29 4.0
|
||||
(byte) plot::x
|
||||
(byte) plot::x#0 reg byte x 2.0
|
||||
(byte) plot::x#1 reg byte x 2.0
|
||||
(byte) plot::x#2 reg byte x 2.0
|
||||
(byte) plot::x#3 reg byte x 2.0
|
||||
(byte) plot::x#4 reg byte x 2.0
|
||||
(byte) plot::x#5 reg byte x 2.0
|
||||
(byte) plot::x#6 reg byte x 2.0
|
||||
(byte) plot::x#7 reg byte x 2.0
|
||||
(byte) plot::x#8 reg byte x 11.0
|
||||
(byte) plot::x#9 reg byte x 3.0
|
||||
(byte) plot::x#0 reg byte x 11.0
|
||||
(byte) plot::x#1 reg byte x 11.0
|
||||
(byte) plot::x#2 reg byte x 11.0
|
||||
(byte) plot::x#3 reg byte x 11.0
|
||||
(byte) plot::x#4 reg byte x 4.545454545454545
|
||||
(byte) plot::y
|
||||
(byte) plot::y#0 reg byte y 4.0
|
||||
(byte) plot::y#1 reg byte y 4.0
|
||||
(byte) plot::y#2 reg byte y 4.0
|
||||
(byte) plot::y#3 reg byte y 4.0
|
||||
(byte) plot::y#4 reg byte y 4.0
|
||||
(byte) plot::y#5 reg byte y 4.0
|
||||
(byte) plot::y#6 reg byte y 4.0
|
||||
(byte) plot::y#7 reg byte y 4.0
|
||||
(byte) plot::y#8 reg byte y 22.0
|
||||
(byte) plot::y#9 reg byte y 4.428571428571428
|
||||
(byte) plot::y#0 reg byte y 22.0
|
||||
(byte) plot::y#1 reg byte y 22.0
|
||||
(byte) plot::y#2 reg byte y 22.0
|
||||
(byte) plot::y#3 reg byte y 22.0
|
||||
(byte) plot::y#4 reg byte y 6.857142857142857
|
||||
(byte[]) plot_bit
|
||||
(const byte[]) plot_bit#0 plot_bit = (word) 5120
|
||||
(byte[]) plot_xhi
|
||||
@ -199,34 +318,52 @@
|
||||
(const byte[]) plot_ylo#0 plot_ylo = (word) 4608
|
||||
|
||||
zp ZP_BYTE:2 [ lines::l#2 lines::l#1 init_plot_tables::$6 ]
|
||||
reg byte x [ plot::x#9 plot::x#6 plot::x#1 plot::x#3 plot::x#0 plot::x#5 plot::x#7 plot::x#2 plot::x#4 plot::x#8 ]
|
||||
reg byte y [ plot::y#9 plot::y#6 plot::y#1 plot::y#3 plot::y#0 plot::y#5 plot::y#7 plot::y#2 plot::y#4 plot::y#8 ]
|
||||
zp ZP_BYTE:3 [ line_xdyi::x#2 line_xdyi::x#0 line_xdyi::x#1 lines::$2 ]
|
||||
zp ZP_BYTE:4 [ line_xdyi::y#2 line_xdyi::y#0 line_xdyi::y#5 line_xdyi::y#1 lines::$3 ]
|
||||
zp ZP_BYTE:5 [ line_xdyi::e#3 line_xdyi::e#0 line_xdyi::e#6 line_xdyi::e#2 line_xdyi::e#1 line::x0#0 ]
|
||||
zp ZP_BYTE:3 [ line_ydxi::xd#2 line_ydxi::xd#1 line_ydxi::xd#0 lines::$2 line::y0#0 ]
|
||||
zp ZP_BYTE:4 [ line_ydxi::yd#5 line_ydxi::yd#1 line_ydxi::yd#0 lines::$3 line::yd#1 line::yd#0 line::yd#3 line::yd#10 ]
|
||||
zp ZP_BYTE:5 [ line_ydxi::y1#6 line_ydxi::y1#1 line_ydxi::y1#0 line::x0#0 ]
|
||||
zp ZP_BYTE:6 [ line_ydxi::x#3 line_ydxi::x#5 line_ydxi::x#1 line_ydxi::x#0 line_ydxi::x#6 line_ydxi::x#2 ]
|
||||
zp ZP_BYTE:7 [ line_ydxi::y#3 line_ydxi::y#6 line_ydxi::y#1 line_ydxi::y#0 line_ydxi::y#2 ]
|
||||
zp ZP_BYTE:8 [ line_ydxi::e#3 line_ydxi::e#0 line_ydxi::e#6 line_ydxi::e#2 line_ydxi::e#1 line::xd#1 line::xd#0 ]
|
||||
reg byte x [ plot::x#4 plot::x#1 plot::x#0 plot::x#3 plot::x#2 ]
|
||||
reg byte y [ plot::y#4 plot::y#1 plot::y#0 plot::y#3 plot::y#2 ]
|
||||
zp ZP_BYTE:9 [ line_xdyi::yd#2 line_xdyi::yd#0 line_xdyi::yd#1 ]
|
||||
zp ZP_BYTE:10 [ line_xdyi::xd#5 line_xdyi::xd#0 line_xdyi::xd#1 ]
|
||||
zp ZP_BYTE:11 [ line_xdyi::x1#6 line_xdyi::x1#0 line_xdyi::x1#1 ]
|
||||
zp ZP_BYTE:12 [ line_xdyi::x#3 line_xdyi::x#6 line_xdyi::x#0 line_xdyi::x#1 line_xdyi::x#2 ]
|
||||
zp ZP_BYTE:13 [ line_xdyi::y#3 line_xdyi::y#5 line_xdyi::y#0 line_xdyi::y#1 line_xdyi::y#6 line_xdyi::y#2 ]
|
||||
zp ZP_BYTE:14 [ line_xdyi::e#3 line_xdyi::e#0 line_xdyi::e#6 line_xdyi::e#2 line_xdyi::e#1 ]
|
||||
zp ZP_BYTE:15 [ line_ydxd::xd#2 line_ydxd::xd#1 line_ydxd::xd#0 ]
|
||||
zp ZP_BYTE:16 [ line_ydxd::yd#5 line_ydxd::yd#1 line_ydxd::yd#0 ]
|
||||
zp ZP_BYTE:17 [ line_ydxd::y1#6 line_ydxd::y1#1 line_ydxd::y1#0 ]
|
||||
zp ZP_BYTE:18 [ line_ydxd::x#3 line_ydxd::x#5 line_ydxd::x#1 line_ydxd::x#0 line_ydxd::x#6 line_ydxd::x#2 ]
|
||||
zp ZP_BYTE:19 [ line_ydxd::y#3 line_ydxd::y#6 line_ydxd::y#1 line_ydxd::y#0 line_ydxd::y#2 ]
|
||||
zp ZP_BYTE:20 [ line_ydxd::e#3 line_ydxd::e#0 line_ydxd::e#6 line_ydxd::e#2 line_ydxd::e#1 ]
|
||||
zp ZP_BYTE:21 [ line_xdyd::yd#2 line_xdyd::yd#0 line_xdyd::yd#1 ]
|
||||
zp ZP_BYTE:22 [ line_xdyd::xd#5 line_xdyd::xd#0 line_xdyd::xd#1 ]
|
||||
zp ZP_BYTE:23 [ line_xdyd::x1#6 line_xdyd::x1#0 line_xdyd::x1#1 ]
|
||||
zp ZP_BYTE:24 [ line_xdyd::x#3 line_xdyd::x#6 line_xdyd::x#0 line_xdyd::x#1 line_xdyd::x#2 ]
|
||||
zp ZP_BYTE:25 [ line_xdyd::y#3 line_xdyd::y#5 line_xdyd::y#0 line_xdyd::y#1 line_xdyd::y#6 line_xdyd::y#2 ]
|
||||
zp ZP_BYTE:26 [ line_xdyd::e#3 line_xdyd::e#0 line_xdyd::e#6 line_xdyd::e#2 line_xdyd::e#1 ]
|
||||
reg byte x [ init_plot_tables::x#2 init_plot_tables::x#1 ]
|
||||
reg byte y [ init_plot_tables::bit#3 init_plot_tables::bit#4 init_plot_tables::bit#1 ]
|
||||
reg byte x [ init_plot_tables::y#2 init_plot_tables::y#1 ]
|
||||
zp ZP_PTR_BYTE:6 [ init_plot_tables::yoffs#2 init_plot_tables::yoffs#4 init_plot_tables::yoffs#1 init_screen::b#2 init_screen::b#1 init_screen::c#2 init_screen::c#1 plot::plotter_x#1 plot::plotter_x#2 plot::plotter#0 ]
|
||||
zp ZP_PTR_BYTE:27 [ init_plot_tables::yoffs#2 init_plot_tables::yoffs#4 init_plot_tables::yoffs#1 init_screen::b#2 init_screen::b#1 init_screen::c#2 init_screen::c#1 plot::plotter_x#1 plot::plotter_x#2 plot::plotter#0 ]
|
||||
reg byte y [ lines::$0 ]
|
||||
reg byte x [ lines::$5 ]
|
||||
zp ZP_BYTE:8 [ line::x1#0 ]
|
||||
reg byte y [ line::y0#0 ]
|
||||
zp ZP_BYTE:9 [ line::y1#0 ]
|
||||
zp ZP_BYTE:10 [ line::xd#1 line_xdyi::xd#0 ]
|
||||
reg byte x [ line::yd#0 ]
|
||||
zp ZP_BYTE:11 [ line_xdyi::x1#0 ]
|
||||
zp ZP_BYTE:12 [ line_xdyi::yd#0 ]
|
||||
reg byte a [ line::xd#0 ]
|
||||
reg byte y [ line::x1#0 ]
|
||||
reg byte x [ line::y1#0 ]
|
||||
reg byte a [ line_ydxi::$8 ]
|
||||
reg byte a [ plot::$0 ]
|
||||
reg byte a [ plot::$1 ]
|
||||
reg byte a [ plot::$2 ]
|
||||
zp ZP_PTR_BYTE:13 [ plot::plotter_y#1 plot::plotter_y#2 ]
|
||||
zp ZP_PTR_BYTE:29 [ plot::plotter_y#1 plot::plotter_y#2 ]
|
||||
reg byte a [ plot::$3 ]
|
||||
zp ZP_BYTE:15 [ plot::$5 ]
|
||||
zp ZP_BYTE:31 [ plot::$5 ]
|
||||
reg byte a [ plot::$6 ]
|
||||
reg byte a [ plot::$7 ]
|
||||
reg byte a [ line_xdyi::$8 ]
|
||||
reg byte a [ line_ydxd::$8 ]
|
||||
reg byte a [ line_xdyd::$8 ]
|
||||
reg byte a [ init_plot_tables::$0 ]
|
||||
reg byte a [ init_plot_tables::$7 ]
|
||||
reg byte a [ init_plot_tables::$8 ]
|
||||
|
Loading…
Reference in New Issue
Block a user