Commit Graph

166 Commits

Author SHA1 Message Date
Adrian Conlon
e8715b941b Explicit use of OAM and VRAM
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-04 18:00:53 +01:00
Adrian Conlon
9796f9d600 First stab at associating the "Display" class more closely with the Bus.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-04 15:37:11 +01:00
Adrian Conlon
2b5324cb43 More scanline changes. Try to render only what we need to see.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-04 01:28:33 +01:00
Adrian Conlon
d5a724fdb4 Whoops: missed variable name change.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-04 00:34:11 +01:00
Adrian Conlon
e2ea6d1445 Some scan line render corrections.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-04 00:30:59 +01:00
Adrian Conlon
c92b0642a1 First stab at scan line rendering.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-03 23:54:39 +01:00
Adrian Conlon
27acba97ff Correct linux warning (signed/unsigned)
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-03 15:42:39 +01:00
Adrian Conlon
1993cbe656 Whoops: missing Makefile source entry.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-03 15:29:48 +01:00
Adrian Conlon
c21d66eba4 Correct both a linux warning, and some timing anomalies.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-02 20:54:38 +01:00
Adrian Conlon
18d74b6f13 More linux changes
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-02 20:29:16 +01:00
Adrian Conlon
d2c3efac83 More linux fixes.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-02 17:30:46 +01:00
Adrian Conlon
44ff68d6f3 First part of gb linux port.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-02 16:47:05 +01:00
Adrian Conlon
c06c0d2cf9 Small tidy ups + optimisations.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-02 15:28:41 +01:00
Adrian Conlon
8b1da2097b More scan line rendering changes.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-02 10:12:25 +01:00
Adrian Conlon
10913bf1b8 Remove some unused signals.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-01 22:22:25 +01:00
Adrian Conlon
63f7216341 More preparation for scan line rendering.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-10-01 11:32:41 +01:00
Adrian Conlon
88117398ef Add interrupt signal generation.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-09-30 16:47:43 +01:00
Adrian Conlon
13fed631d4 Correct some cycle counting assertion failures.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-09-30 16:46:53 +01:00
Adrian Conlon
e5e6d02845 Correct keypad interrupt generation.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-09-30 16:24:25 +01:00
Adrian Conlon
66b870bb78 First stage refactoring CPU instruction execution (to hopefully allow display interrupt interleave)
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-09-30 15:28:25 +01:00
Adrian Conlon
da438ffb85 Try to get better cycle count/adjustments. 2017-09-30 00:03:42 +01:00
Adrian.Conlon
794d0fa361 First stab at GB -> linux
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-26 22:59:21 +01:00
Adrian.Conlon
04b6835cf4 Whoops: dangling assert from old audio code.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-23 23:40:26 +01:00
Adrian.Conlon
dbe5f7f8e5 Prepare the LR35902 to allow use of the Blargg gb sound library.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-23 22:56:11 +01:00
Adrian.Conlon
053d649124 Whoops: correct or/and muddle in the volume envelope.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-23 11:19:01 +01:00
Adrian.Conlon
210286514e Calculate voice step length adjustments.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-23 00:26:06 +01:00
Adrian.Conlon
5084d85e49 Wire envelope amplitude shaping.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-23 00:07:30 +01:00
Adrian.Conlon
09f7fe5dfe Couple of small "documentation" changes.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-22 22:09:57 +01:00
Adrian.Conlon
78b6e7b339 Remove dump logging, it was never overly useful anyway.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-22 19:17:34 +01:00
Adrian.Conlon
1a1d5ea807 Start the process of audio frame generation.
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-09-22 09:30:27 +01:00
Adrian.Conlon
a4cdc2bcb5 Correct int/bool cast warning
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-09-22 09:29:05 +01:00
Adrian.Conlon
531d5d6d6b Refactor the Audio header into declaration/definition files.
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-09-21 23:43:33 +01:00
Adrian.Conlon
877618f973 Wire audio frame counter (tbc)
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-09-21 21:26:52 +01:00
Adrian.Conlon
cd63636895 Move some constants from static methods to enumerations.
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-09-21 20:08:37 +01:00
Adrian.Conlon
7830c29f6a Update audio custom wave pattern data.
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-09-21 10:36:52 +01:00
Adrian.Conlon
32a585a980 Correct warning.
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-09-20 22:33:43 +01:00
Adrian.Conlon
acf0c53e1a Move the audio data (hopefully) correctly between the registers and the audio device.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-20 20:53:04 +01:00
Adrian.Conlon
ca0b768ac5 More Noise Register to Audo structure conversions.
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-09-20 00:38:35 +01:00
Adrian.Conlon
e06a092b2a First stab at audio initialisation.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-19 23:11:50 +01:00
Adrian.Conlon
685a645674 1) Correct frequency hi/lo storage
2) Calculate resultant frequency in Hz.
3) Add extra logging for audio device register writes.

Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-18 19:17:38 +01:00
Adrian.Conlon
735ebe3e85 Add a couple of missed debugging messages.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-17 23:07:56 +01:00
Adrian.Conlon
61ae382a98 A different approach to audio handling. Just holding data at the moment.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-17 22:19:07 +01:00
Adrian.Conlon
462b82add6 Add some new events for sound updates (TBC)
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-17 09:50:20 +01:00
Adrian.Conlon
ea3f154989 Preliminary support for 16 row high sprites. Don't think it's working!
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-17 09:46:28 +01:00
Adrian.Conlon
07d44966ac Another stab at keyboard scanning. Better, but not perfect...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-15 21:25:08 +01:00
Adrian.Conlon
9190b29b4b Remove some unused memory event handlers.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-15 18:56:05 +01:00
Adrian.Conlon
26e99f6934 Whoops: broke sprite transparency and flipping!
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-15 18:29:47 +01:00
Adrian.Conlon
f4c8496882 Generalise tile rendering code for background and sprites.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-15 18:23:02 +01:00
Adrian.Conlon
e40ee1d7a6 X/Y sprite flip implemented. Easy!
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-15 17:48:06 +01:00
Adrian.Conlon
94fe1a7494 Add support for sprite transparencies.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-15 17:37:57 +01:00