From af2ba26c626735787b8513237397c371719f832c Mon Sep 17 00:00:00 2001 From: mrdudz Date: Fri, 4 Sep 2015 14:14:17 +0200 Subject: [PATCH] fix gregs complaints :) --- asminc/pce.inc | 20 +++++++++++++++----- libsrc/pce/kplot.s | 2 ++ libsrc/pce/psg.s | 21 +++++++++++---------- testcode/lib/pce/Makefile | 3 ++- testcode/lib/pce/conio.c | 10 +++++----- 5 files changed, 35 insertions(+), 21 deletions(-) diff --git a/asminc/pce.inc b/asminc/pce.inc index 2d2843143..9a77bcc4e 100644 --- a/asminc/pce.inc +++ b/asminc/pce.inc @@ -6,11 +6,10 @@ CURS_X = $30 CURS_Y = $31 SCREEN_PTR = $32 ;2 -CRAM_PTR = $34 ;2 -CHARCOLOR = $36 -RVS = $37 -BGCOLOR = $38 -tickcount = $39 ;4 +CHARCOLOR = $34 +RVS = $35 +BGCOLOR = $36 +tickcount = $37 ;4 ; FIXME: screen dimensions my change according to selected video mode screenrows = (224/8) @@ -66,6 +65,17 @@ VCE_DATA_HI = $0405 ; MSB of 16-bit palette data PSG = $0800 ; base +PSG_CHAN_SELECT = $0800 +PSG_GLOBAL_PAN = $0801 +PSG_FREQ_LO = $0802 +PSG_FREQ_HI = $0803 +PSG_CHAN_CTRL = $0804 +PSG_CHAN_PAN = $0805 +PSG_CHAN_DATA = $0806 +PSG_NOISE = $0807 +PSG_LFO_FREQ = $0808 +PSG_LFO_CTRL = $0809 + ; timer TIMER = $0c00 ; base diff --git a/libsrc/pce/kplot.s b/libsrc/pce/kplot.s index b580f8473..24ae8fab7 100644 --- a/libsrc/pce/kplot.s +++ b/libsrc/pce/kplot.s @@ -19,6 +19,8 @@ PLOT: ldy CURS_X rts + .rodata + _plotlo: .repeat screenrows,line .byte <($0000+(line*$80)) diff --git a/libsrc/pce/psg.s b/libsrc/pce/psg.s index 645c02615..17d26b941 100644 --- a/libsrc/pce/psg.s +++ b/libsrc/pce/psg.s @@ -5,20 +5,21 @@ psg_init: clx - stx $0800 ; Select channel + stz PSG_GLOBAL_PAN ; Clear global balance + psg_clear_loop: - stz $0801 ; Clear global balance - stz $0802 ; Clear frequency LSB - stz $0803 ; Clear frequency MSB - stz $0804 ; Clear volume - stz $0805 ; Clear balance - stz $0807 ; Clear noise control - stz $0808 ; Clear LFO frequency - stz $0809 ; Clear LFO control + stx PSG_CHAN_SELECT ; Select channel + stz PSG_FREQ_LO ; Clear frequency LSB + stz PSG_FREQ_HI ; Clear frequency MSB + stz PSG_CHAN_CTRL ; Clear volume + stz PSG_CHAN_PAN ; Clear balance + stz PSG_NOISE ; Clear noise control + stz PSG_LFO_FREQ ; Clear LFO frequency + stz PSG_LFO_CTRL ; Clear LFO control cly psg_clear_waveform: - stz $0806 ; Clear waveform byte + stz PSG_CHAN_DATA ; Clear waveform byte iny cpy #$20 bne psg_clear_waveform diff --git a/testcode/lib/pce/Makefile b/testcode/lib/pce/Makefile index 364074180..1fee199fd 100644 --- a/testcode/lib/pce/Makefile +++ b/testcode/lib/pce/Makefile @@ -2,10 +2,11 @@ all: conio.pce conio.pce: conio.c - ../../../bin/cl65 -t pce conio.c ../../../joy/pce-stdjoy.joy --mapfile conio.map -o conio.pce + ../../../bin/cl65 -t pce conio.c --mapfile conio.map -o conio.pce clean: $(RM) conio.pce + $(RM) conio.map test: conio.pce mednafen -force_module pce conio.pce diff --git a/testcode/lib/pce/conio.c b/testcode/lib/pce/conio.c index 44da30a2a..d22fe58ee 100644 --- a/testcode/lib/pce/conio.c +++ b/testcode/lib/pce/conio.c @@ -33,13 +33,13 @@ void main(void) cprintf("stackvar: %02x\n\r", stackvar); j = joy_count(); - gotoxy(0,10); + gotoxy(0,9); cprintf("Found %d Joysticks.", j); for (i = 0; i < 4; ++i) { - gotoxy(0, 17 + i); + gotoxy(0, 16 + i); p = malloc(16); - memcpy(p, "01234567890abcdef", 16); + memcpy(p, "0123456789abcdef", 16); cprintf("alloced at: %04p - %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c", p, p[0],p[1],p[2],p[3],p[4],p[5],p[6],p[7], p[8],p[9],p[10],p[11],p[12],p[13],p[14],p[15] @@ -88,12 +88,12 @@ void main(void) cprintf("%02x", stackvar); ++datavar; ++stackvar; - gotoxy(0,8); + gotoxy(0,7); clk = clock(); cprintf("clock: %08lx", clk); for (i = 0; i < 4; ++i) { - gotoxy(0, 12 + i); + gotoxy(0, 11 + i); j = joy_read (i); cprintf ("pad %d: %02x %-6s%-6s%-6s%-6s%-6s%-6s%-6s%-6s", i, j, -- 2.39.5