diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_pwsz1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_pwsz1.asm new file mode 100644 index 000000000..183e5c63c --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_pwsz1.asm @@ -0,0 +1,2 @@ +ldy #0 +lda ({z1}),y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_pwuc1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_pwuc1.asm new file mode 100644 index 000000000..bee08251a --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_pwuc1.asm @@ -0,0 +1 @@ +lda {c1} \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_pwuz1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_pwuz1.asm new file mode 100644 index 000000000..183e5c63c --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_pwuz1.asm @@ -0,0 +1,2 @@ +ldy #0 +lda ({z1}),y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_qvoz1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_qvoz1.asm new file mode 100644 index 000000000..183e5c63c --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte0__deref_qvoz1.asm @@ -0,0 +1,2 @@ +ldy #0 +lda ({z1}),y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte0_pwsc1_derefidx_vbuxx.asm b/src/main/fragment/mos6502-common/vbuaa=_byte0_pwsc1_derefidx_vbuxx.asm new file mode 100644 index 000000000..7454fa763 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte0_pwsc1_derefidx_vbuxx.asm @@ -0,0 +1 @@ +lda {c1},x \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte0_pwsc1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/vbuaa=_byte0_pwsc1_derefidx_vbuyy.asm new file mode 100644 index 000000000..b2b867b05 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte0_pwsc1_derefidx_vbuyy.asm @@ -0,0 +1 @@ +lda {c1},y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte0_pwuc1_derefidx_vbuxx.asm b/src/main/fragment/mos6502-common/vbuaa=_byte0_pwuc1_derefidx_vbuxx.asm new file mode 100644 index 000000000..7454fa763 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte0_pwuc1_derefidx_vbuxx.asm @@ -0,0 +1 @@ +lda {c1},x \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte0_pwuc1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/vbuaa=_byte0_pwuc1_derefidx_vbuyy.asm new file mode 100644 index 000000000..b2b867b05 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte0_pwuc1_derefidx_vbuyy.asm @@ -0,0 +1 @@ +lda {c1},y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte0_pwuz1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/vbuaa=_byte0_pwuz1_derefidx_vbuyy.asm new file mode 100644 index 000000000..93fe0de55 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte0_pwuz1_derefidx_vbuyy.asm @@ -0,0 +1 @@ +lda ({z1}),y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte0_qvoz1_derefidx_vbuc1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte0_qvoz1_derefidx_vbuc1.asm new file mode 100644 index 000000000..d4cbf3f98 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte0_qvoz1_derefidx_vbuc1.asm @@ -0,0 +1,2 @@ +ldy #{c1} +lda ({z1}),y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwsc1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwsc1.asm new file mode 100644 index 000000000..a836deba0 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwsc1.asm @@ -0,0 +1 @@ +lda {c1}+1 \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwsz1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwsz1.asm new file mode 100644 index 000000000..0f04c643d --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwsz1.asm @@ -0,0 +1,2 @@ +ldy #1 +lda ({z1}),y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwuc1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwuc1.asm new file mode 100644 index 000000000..a836deba0 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwuc1.asm @@ -0,0 +1 @@ +lda {c1}+1 \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwuz1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwuz1.asm new file mode 100644 index 000000000..0f04c643d --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_pwuz1.asm @@ -0,0 +1,2 @@ +ldy #1 +lda ({z1}),y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_qvoz1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_qvoz1.asm new file mode 100644 index 000000000..0f04c643d --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1__deref_qvoz1.asm @@ -0,0 +1,2 @@ +ldy #1 +lda ({z1}),y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1__word_vdum1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1__word_vdum1.asm new file mode 100644 index 000000000..0d95da3e7 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1__word_vdum1.asm @@ -0,0 +1 @@ +lda {m1}+1 \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1_pwsc1_derefidx_vbuxx.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwsc1_derefidx_vbuxx.asm new file mode 100644 index 000000000..66ef35236 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwsc1_derefidx_vbuxx.asm @@ -0,0 +1 @@ +lda {c1}+1,x \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1_pwsc1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwsc1_derefidx_vbuyy.asm new file mode 100644 index 000000000..5c24499d4 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwsc1_derefidx_vbuyy.asm @@ -0,0 +1 @@ +lda {c1}+1,y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuc1_derefidx_vbuxx.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuc1_derefidx_vbuxx.asm new file mode 100644 index 000000000..66ef35236 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuc1_derefidx_vbuxx.asm @@ -0,0 +1 @@ +lda {c1}+1,x \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuc1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuc1_derefidx_vbuyy.asm new file mode 100644 index 000000000..5c24499d4 --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuc1_derefidx_vbuyy.asm @@ -0,0 +1 @@ +lda {c1}+1,y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuz1_derefidx_vbuc1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuz1_derefidx_vbuc1.asm new file mode 100644 index 000000000..870c06e6a --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuz1_derefidx_vbuc1.asm @@ -0,0 +1,2 @@ +ldy #{c1}+1 +lda ({z1}),y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuz1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuz1_derefidx_vbuyy.asm new file mode 100644 index 000000000..c6e58848c --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1_pwuz1_derefidx_vbuyy.asm @@ -0,0 +1,2 @@ +iny +lda ({z1}),y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/vbuaa=_byte1_qvoz1_derefidx_vbuc1.asm b/src/main/fragment/mos6502-common/vbuaa=_byte1_qvoz1_derefidx_vbuc1.asm new file mode 100644 index 000000000..870c06e6a --- /dev/null +++ b/src/main/fragment/mos6502-common/vbuaa=_byte1_qvoz1_derefidx_vbuc1.asm @@ -0,0 +1,2 @@ +ldy #{c1}+1 +lda ({z1}),y \ No newline at end of file diff --git a/src/test/kc/examples/mega65/linedrawing.c b/src/test/kc/examples/mega65/linedrawing.c index e6a9a3031..3be46f930 100644 --- a/src/test/kc/examples/mega65/linedrawing.c +++ b/src/test/kc/examples/mega65/linedrawing.c @@ -1,7 +1,7 @@ // Test hardware line drawing // Based on https://github.com/MEGA65/mega65-tools/blob/master/src/tests/test_290.c -#pragma target(mega65_remote) +#pragma target(mega65) #include #include #include <6502.h> @@ -90,8 +90,8 @@ unsigned int m65_div16u_frac(unsigned int dividend, unsigned int divisor) { // Graphics mode is 1 byte per pixel. Addressing is based on columns of 8px * 200px arranged to have linear addressing. // addr = (x/8) * 64 * 25 + (y*8) + (x&7) char line_dma_command[] = { - DMA_OPTION_LINE_XSTEP_LO, (25*64 - 8) & 0xff, // Line X step bytes 64x25 - DMA_OPTION_LINE_XSTEP_HI, (25*64 - 8) >> 8, // Line X step bytes 64x25 + DMA_OPTION_LINE_XSTEP_LO, LOBYTE(25*64 - 8), // Line X step bytes 64x25 + DMA_OPTION_LINE_XSTEP_HI, HIBYTE(25*64 - 8), // Line X step bytes 64x25 DMA_OPTION_LINE_SLOPE_LO, 0, // Line Slope DMA_OPTION_LINE_SLOPE_HI, 0, // Line Slope DMA_OPTION_LINE_SLOPE_INIT_LO, LOBYTE(32768), // Line slope init