Thomas Harte
|
303965fbb8
|
Removes the crutch of my first-attempt implementation.
|
2020-05-08 20:53:34 -04:00 |
|
Thomas Harte
|
0505b82384
|
Restores top bit of channel period, propagates it to the envelope generator.
|
2020-05-05 00:28:24 -04:00 |
|
Thomas Harte
|
386a7ca442
|
Continues doing away with the attempt heavily to interleave the OPLL and OPL2, creating a new OPLL class.
|
2020-05-04 21:14:51 -04:00 |
|
Thomas Harte
|
94614ae4c3
|
Shifts the LFO implementation inline.
|
2020-05-03 21:44:22 -04:00 |
|
Thomas Harte
|
1223c99e0f
|
Adds waveform generation logic to the new factoring.
|
2020-05-03 21:38:20 -04:00 |
|
Thomas Harte
|
1ff5ea0a6e
|
Adds KeyLevelScaler, implements EnvelopeGenerator, adds reset to PhaseGenerator.
|
2020-05-03 16:24:55 -04:00 |
|
Thomas Harte
|
9d2691d1d2
|
Taking it as given that outstanding deficiencies are mostly due to poor design, starts breaking out the envelope and phase generators.
|
2020-05-01 23:46:42 -04:00 |
|
Thomas Harte
|
5896288edd
|
Adapts to new interface.
|
2020-04-29 22:08:36 -04:00 |
|
Thomas Harte
|
f899af0eef
|
Fixes OPL tests.
|
2020-04-28 20:17:16 -04:00 |
|
Thomas Harte
|
6d4e29c851
|
Strips mixer back to basics in search of audio issues.
|
2020-04-24 23:32:02 -04:00 |
|
Thomas Harte
|
9e3614066a
|
Adds tremolo support, switches to global timer for ADSR stages other than attack.
|
2020-04-23 23:55:49 -04:00 |
|
Thomas Harte
|
32fd1897d0
|
Via a unit test, confirms and fixes relative volumes of OPLL channels.
Also rejigs responsibility for scaling to emulator-standard volume.
|
2020-04-20 23:17:29 -04:00 |
|
Thomas Harte
|
39e6a28730
|
Rearranges file.
|
2020-04-20 19:41:04 -04:00 |
|
Thomas Harte
|
3852e119aa
|
Adds test data for FM wave generation.
|
2020-04-20 19:33:03 -04:00 |
|
Thomas Harte
|
99fa86a67e
|
Adds a test for lookup sine. And fixes lookup sine.
|
2020-04-20 18:40:47 -04:00 |
|
Thomas Harte
|
c54bbc5a04
|
Rename Table.h; LogSin -> LogSign and make it a bit more typer.
|
2020-04-19 13:33:17 -04:00 |
|
Thomas Harte
|
0aceddd088
|
Starts tidying up the OPL2.
This is as a precursor to switching to using the proper table lookups, which I hope will automatically fix my range issues.
|
2020-04-15 22:10:50 -04:00 |
|
Thomas Harte
|
a7e63b61eb
|
Just from printing numbers: corrects transition from attack to decay.
|
2020-04-15 00:26:01 -04:00 |
|
Thomas Harte
|
b13b0d9311
|
Starts towards implementing some OPL test cases.
|
2020-04-14 23:51:45 -04:00 |
|
Thomas Harte
|
d9e41d42b5
|
Adds the OPL2 to SConstruct.
|
2020-04-05 21:34:19 -04:00 |
|
Thomas Harte
|
b0abc4f7bb
|
Implements enough wiring that the Master System will instantiate and talk to an OPLL.
|
2020-04-03 20:05:36 -04:00 |
|
Thomas Harte
|
e4d4e4e002
|
Adds 6502 State to the SConstruct file.
On the assumption I'll actually use it at some point.
|
2020-04-02 19:16:22 -04:00 |
|
Thomas Harte
|
dfc1c7d358
|
Separates 6502 State object to make it optional.
Also makes a few minor const improvements while I'm poking around.
|
2020-04-02 19:11:27 -04:00 |
|
Thomas Harte
|
f417fa82a4
|
Splits 'CRTMachine' into three parts: ScanProducer, AudioProducer, TimedMachine.
Simultaneously cleans up some of the naming conventions and tries to make things a bit more template-compatible.
|
2020-04-01 23:19:34 -04:00 |
|
Thomas Harte
|
5fd2be3c8e
|
Makes a genuine attempt at five and three decoding.
|
2020-03-25 20:50:26 -04:00 |
|
Thomas Harte
|
cfca3e2507
|
Adds missing header for std::setw, std::set fill.
|
2020-03-23 21:26:50 -04:00 |
|
Thomas Harte
|
fcdc1bfbd0
|
Prints the CRC32(s) of any missing ROMs.
|
2020-03-23 20:00:13 -04:00 |
|
Thomas Harte
|
0e502f6d5c
|
Ensures the macOS version retains volume.
|
2020-03-23 00:10:56 -04:00 |
|
Thomas Harte
|
bd1b4b8a9f
|
Increases volume fade-out speed.
|
2020-03-22 21:13:55 -04:00 |
|
Thomas Harte
|
38d81c394f
|
Switches OSAtomics to stdatomics. The former were deprecated by macOS 10.12.
|
2020-03-22 21:11:04 -04:00 |
|
Thomas Harte
|
72103a4adb
|
Corrects execution cap for splitAndSync ticks.
|
2020-03-22 19:25:02 -04:00 |
|
Thomas Harte
|
e6bae261c4
|
Ensures volume controls appear for mouse-capture machines when not capturing.
|
2020-03-22 19:06:38 -04:00 |
|
Thomas Harte
|
5edb0c0ee7
|
Adds animated fade-out to volume control. Bumps macOS version to 10.12.2.
|
2020-03-22 18:45:24 -04:00 |
|
Thomas Harte
|
442ce403f9
|
It's a bit jarring, but ensures volume control shows and hides according to mouse cursor.
|
2020-03-22 16:25:07 -04:00 |
|
Thomas Harte
|
7398cb44e2
|
Adds a functioning volume control for macOS, it just doesn't know how to hide yet.
|
2020-03-22 13:24:23 -04:00 |
|
Thomas Harte
|
15d54dfb4c
|
Adds 'volume' command-line parameter for kiosk mode.
|
2020-03-21 22:24:31 -04:00 |
|
Thomas Harte
|
0c689e85a5
|
Use screen number for spotting screen changes.
NSScreen implements Swift Equatable but doesn't seem officially to implement -isEqual:.
|
2020-03-21 17:01:57 -04:00 |
|
Thomas Harte
|
5a1bae8a9c
|
Ensures proper NSScreen comparison, and no never-ending setupDisplayLink loop on exit.
|
2020-03-20 23:00:16 -04:00 |
|
Thomas Harte
|
69277bbb27
|
Renames files to match project convention.
|
2020-03-19 23:24:06 -04:00 |
|
Thomas Harte
|
b8b335f67d
|
Exposes the Master System's region for SDL selection.
|
2020-03-19 21:46:42 -04:00 |
|
Thomas Harte
|
eef7868199
|
Ensures 'new' overrides default selection; doesn't try to propagate multiple files if machines won't take them.
|
2020-03-19 21:15:38 -04:00 |
|
Thomas Harte
|
c1b69fd091
|
Attempts to support multiple pieces of media on the SDL command line, ensures proper window titling.
|
2020-03-19 20:40:43 -04:00 |
|
Thomas Harte
|
b8ebdc012f
|
Ensure normative construction declaration ordering.
|
2020-03-19 18:58:36 -04:00 |
|
Thomas Harte
|
9995d776de
|
Attempts to fix the macOS version, plus some implicit type conversions.
|
2020-03-18 23:29:09 -04:00 |
|
Thomas Harte
|
c6f35c9aac
|
Rejigs help output.
|
2020-03-18 23:11:25 -04:00 |
|
Thomas Harte
|
615ea2f573
|
Applies parsed arguments.
|
2020-03-18 22:31:32 -04:00 |
|
Thomas Harte
|
a7e1920597
|
Restores ColecoVision runtime options.
|
2020-03-18 00:06:52 -04:00 |
|
Thomas Harte
|
f9ca443667
|
Adds the ability for reflective structs to limit the permitted values to enumerated properties.
|
2020-03-17 21:44:04 -04:00 |
|
Thomas Harte
|
394ee61c78
|
Starts a switch to reflectable-style runtime options.
The Amstrad CPC and ZX80/81 have made the jump so far, subject to caveats. The macOS build is unlikely currently to work properly.
|
2020-03-16 23:25:05 -04:00 |
|
Thomas Harte
|
8e3bf0dbca
|
Starts moving towards a Deflectable-based system of runtime options.
|
2020-03-15 23:48:53 -04:00 |
|