Skip to content

Commit

Permalink
v0.20
Browse files Browse the repository at this point in the history
I want to get my changes out before Action 53 volume 4.
This is the last version to have Bassil S. in the patron credits.
Hardware testing revealed three bugs, two of them in new tests,
that are fixed in this commit:

- NES MDFourier: Fix solid color backgrounds
- GB Chroma crosstalk: Fix page crossing that was causing it to
  send incorrect colors
- GBA Vertical scroll test: Display the correct help page
  • Loading branch information
pinobatch committed Jan 30, 2020
1 parent b68a5a7 commit 3b03005
Show file tree
Hide file tree
Showing 13 changed files with 90 additions and 69 deletions.
2 changes: 1 addition & 1 deletion gameboy/CHANGES.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
0.20 (2020-01-xx)
0.20 (2020-01-30)
* Add SGB-only Chroma crosstalk test
* Help: Wait to draw status line until Huffman decoding finishes
* Help: Blink Gus's eyes
Expand Down
2 changes: 1 addition & 1 deletion gameboy/makefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

# Used in the title of the zipfile and .gb executable
title:=gb240p
version:=0.19
version:=0.20

# Space-separated list of asm files without .z80 extension
# (use a backslash to continue on the next line)
Expand Down
4 changes: 2 additions & 2 deletions gameboy/src/helppages.txt
Original file line number Diff line number Diff line change
Expand Up @@ -716,12 +716,12 @@ crosstalk artifacts.

== 144p Test Suite ==

Ver. 0.20wip (2019-09-19)
Ver. 0.20 (2020-01-30)
Chroma crosstalk

© 2011-2016
Artemio Urbina
© 2015-2019
© 2015-2020
Damian Yerrick
This is free software; see
the source for copying
Expand Down
116 changes: 60 additions & 56 deletions gameboy/src/sgbtests.z80
Original file line number Diff line number Diff line change
Expand Up @@ -420,60 +420,7 @@ sgb_load_border::
ld a, $14<<3|1
jp sgb_send_trn_ab

; Mystery test ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

pass_pattern:
db %01111111
db %00000110
db %00001000
db %00110000
db %01111111
db %00000000
db %00000001
db %01111111
db %00000001
db %00000000
db %00100110
db %01001001
db %01001001
db %00110010
db %00000000
db %00111110
db %01000001
db %01000001
db %00100010

nes_palette_11to1c:
if 0
; NES palette made with bisqwit's tool
; Not ideal for Super NES, but better than nothing
drgb $0f63b3
drgb $4051d0
drgb $7841cc
drgb $a736a9
drgb $c03470
drgb $bd3c30
drgb $9f4a00
drgb $6d5c00
drgb $366d00
drgb $077704
drgb $00793d
drgb $00727d
else
; 12 evenly spaced YUV points
drgb $8067ff
drgb $a358ed
drgb $bd54bf
drgb $c75b80
drgb $bd6c40
drgb $a38312
drgb $809800
drgb $5ca712
drgb $42ab40
drgb $38a47f
drgb $4293bf
drgb $5c7ced
endc
; NTSC chroma crosstalk test ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

rsset hTestState
hIncTime rb 1
Expand Down Expand Up @@ -594,8 +541,8 @@ wr1color:
add a
add low(nes_palette_11to1c)
ld e, a
ld a, 0
add high(nes_palette_11to1c)
adc high(nes_palette_11to1c)
sub e
ld d, a
ld a, [de]
ld [hl+], a
Expand All @@ -613,3 +560,60 @@ add_c_to_curpalette:
.nowrap:
ldh [hCurPalette], a
ret

; The needed alignment is not fully understood.
; If "Chroma crosstalk" produces noticeable diagonal stripes even
; on S-Video or RGB, revisit this and wr1color.
section "crosstalkcolors",ROM0,ALIGN[1]
nes_palette_11to1c:
if 0
; NES palette made with bisqwit's tool
; Not ideal for Super NES, but better than nothing
drgb $0f63b3
drgb $4051d0
drgb $7841cc
drgb $a736a9
drgb $c03470
drgb $bd3c30
drgb $9f4a00
drgb $6d5c00
drgb $366d00
drgb $077704
drgb $00793d
drgb $00727d
else
; 12 evenly spaced YUV points
drgb $8067ff
drgb $a358ed
drgb $bd54bf
drgb $c75b80
drgb $bd6c40
drgb $a38312
drgb $809800
drgb $5ca712
drgb $42ab40
drgb $38a47f
drgb $4293bf
drgb $5c7ced
endc

pass_pattern:
db %01111111
db %00000110
db %00001000
db %00110000
db %01111111
db %00000000
db %00000001
db %01111111
db %00000001
db %00000000
db %00100110
db %01001001
db %01001001
db %00110010
db %00000000
db %00111110
db %01000001
db %01000001
db %00100010
4 changes: 3 additions & 1 deletion gba/CHANGES.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
0.20 (2020-01-xx)
0.20 (2020-01-30)
* Add Convergence test
* Vertical scroll test: Display correct help page
* Help: Blink Gus's eyes

0.19 (2019-09-12)
Expand Down
9 changes: 9 additions & 0 deletions gba/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,15 @@ export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)

.PHONY: $(BUILD) clean

#---------------------------------------------------------------------------------
# This sets up the dependencies for the first build if the user runs
# make 240pee_mb.gba
# instead of running
# make
#---------------------------------------------------------------------------------
$(TARGET).gba $(TARGET).elf: $(BUILD)
echo hello...

#---------------------------------------------------------------------------------
$(BUILD):
@[ -d $@ ] || mkdir -p $@
Expand Down
5 changes: 3 additions & 2 deletions gba/src/helppages.txt
Original file line number Diff line number Diff line change
Expand Up @@ -517,7 +517,7 @@ A: Start or stop the test

== Lame boy ==

This test serves as a
This test served as a
placeholder in early versions
of 160p Test Suite for tests
that have not yet been ported
Expand Down Expand Up @@ -634,7 +634,8 @@ Select: Show or hide

== 160p Test Suite ==

Version 0.20wip (2020-01-30)
Version 0.20 (2020-01-30)
Convergence

© 2011-2016 Artemio Urbina
© 2015-2020 Damian Yerrick
Expand Down
2 changes: 1 addition & 1 deletion gba/src/scrolltest.c
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,7 @@ void activity_kiki_scroll(void) {
scrolltest_dy = 1;
load_kiki_bg();
do {
read_pad_help_check(helpsect_hill_zone_scroll_test);
read_pad_help_check(helpsect_vertical_scroll_test);
move_1d_scroll();

VBlankIntrWait();
Expand Down
2 changes: 1 addition & 1 deletion makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
title := 240p-test-mini
version := 0.19
version := 0.20

# Make $(MAKE) work correctly even when Make is installed inside
# C:\Program Files
Expand Down
3 changes: 2 additions & 1 deletion nes/CHANGES.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
0.20 (2020-01-xx)
0.20 (2020-01-30)
* Add Convergence test
* Add MDFourier tone generator

0.19 (2019-09-12)
Expand Down
2 changes: 1 addition & 1 deletion nes/makefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

# These are used in the title of the NES program and the zip file.
title = 240pee
version = 0.18
version = 0.20

# Space-separated list of assembly language files that make up the
# PRG ROM. If it gets too long for one line, you can add a backslash
Expand Down
5 changes: 3 additions & 2 deletions nes/src/helppages.txt
Original file line number Diff line number Diff line change
Expand Up @@ -791,15 +791,16 @@ less than 5 lines (317 us).

== 240p Test Suite ==

Version 0.20wip (2020-01-30)
Version 0.20 (2020-01-30)
Convergence & MDFourier

Concept: Artemio Urbina
🐦 @Artemio
Program: Damian Yerrick
🐦 @PinoBatch

© 2011-2016 Artemio Urbina
© 2015-2019 Damian Yerrick
© 2015-2020 Damian Yerrick
This is free software; see the
source for copying conditions.
There is NO warranty, not
Expand Down
3 changes: 3 additions & 0 deletions nes/src/mdfourierfe.s
Original file line number Diff line number Diff line change
Expand Up @@ -133,8 +133,11 @@ ppu_loaders:
ldx #$3F
sty PPUMASK
stx PPUADDR
ldy #0
sty PPUADDR
sta PPUDATA
sty PPUADDR
sty PPUADDR
rts
.endproc

Expand Down

0 comments on commit 3b03005

Please sign in to comment.