diff options
| author | Miquel Sabaté Solà <msabate@suse.com> | 2023-12-08 21:57:52 +0100 |
|---|---|---|
| committer | Miquel Sabaté Solà <msabate@suse.com> | 2023-12-08 21:57:52 +0100 |
| commit | 46103595c072651ade490c48c417f5d8d7ba9327 (patch) | |
| tree | 92cc48e3e88e614618ea2cca3771c88674f92189 /src | |
| parent | 57fde0bb5184371da33b212de6731c6e6829349f (diff) | |
| download | aoc2023.nes-46103595c072651ade490c48c417f5d8d7ba9327.tar.gz aoc2023.nes-46103595c072651ade490c48c417f5d8d7ba9327.zip | |
Added a test suite
Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
Diffstat (limited to 'src')
| -rw-r--r-- | src/1.s | 16 | ||||
| -rw-r--r-- | src/2.s | 12 |
2 files changed, 24 insertions, 4 deletions
@@ -33,6 +33,8 @@ .include "../include/globals.s" .include "../include/print.s" +.include "../test/defines.s" + ;; "Variables" used by this program. .scope Vars ;; After each iteration, this will hold the tenth of the number that has @@ -99,8 +101,18 @@ lda #%00011110 sta PPU::MASK @loop: + ;; Skip everything if the `done` flag is set. + bit Globals::m_flags + bvs @end + jsr compute_next jmp @loop + +@end: + ;; Run tests now that everything has been done. + CALL_TESTS_ON_DONE +@halt: + jmp @halt .endproc ;; Iterate over the row pointed by `m_address` and compute its value. The tenth @@ -153,10 +165,6 @@ ;; address to the next row. This function will also set the `done` flag whenever ;; we reach the $ED control byte. .proc compute_next - ;; Skip everything if the `done` flag is set. - bit Globals::m_flags - bvs @end - ;; Call `compute` and `accumulate_number`, which work in tandem in order to ;; fetch the value for the current row and add it into the `m_sum` ;; accumulator. @@ -38,6 +38,8 @@ .include "../include/globals.s" .include "../include/print.s" +.include "../test/defines.s" + ;; "Variables" used by this program. .scope Vars ;; Maximum number for each color according to Part 1. @@ -127,8 +129,18 @@ sta PPU::MASK @loop: + ;; Skip everything if the `done` flag is set. + bit Globals::m_flags + bvs @end + jsr compute_next jmp @loop + +@end: + ;; Run tests now that everything has been done. + CALL_TESTS_ON_DONE +@halt: + jmp @halt .endproc ;; Compute the next game if needed. |
