Peter Ferrie
c4da336e98
fix b1 check
2019-06-02 23:39:05 -04:00
Peter Ferrie
7b447699f8
pt3: optimize envelope code
2019-06-02 23:37:26 -04:00
Peter Ferrie
90b8a76a4b
pt3: optimize amplitude code
2019-06-02 23:24:44 -04:00
Peter Ferrie
089d963d23
pt3: remove branch
2019-06-02 23:17:00 -04:00
Peter Ferrie
5c4795ad72
pt3: remove temp_y, add dedicated ornament/sample init entry points
2019-06-02 23:10:50 -04:00
Peter Ferrie
c5bd00e068
pt3: make loop/megahertz self-modified
2019-06-02 22:57:47 -04:00
Vince Weaver
33615c215f
Revert "[PATCH] cut some bytes and cycles"
...
This reverts commit d5ca73dc14
.
2019-06-02 22:36:31 -04:00
Vince Weaver
0b98d803e8
pt3: update optimization info
2019-06-02 01:05:55 -04:00
Peter Ferrie
4e2916c4cb
fix b1 check
2019-06-02 00:39:02 -04:00
Peter Ferrie
d5ca73dc14
[PATCH] cut some bytes and cycles
...
also fix envelope bug
no change in zpage use
The optimizations include (but are not limited to)
+ Make loop code self-modified
+ Make 1.77MHz code self-modified
+ Make speed compare self-modified
+ Add code to reduce size of default ornament/sample load
2019-06-02 00:38:29 -04:00
Vince Weaver
f535a8c774
pt3: update optimization stats
2019-06-02 00:09:49 -04:00
Peter Ferrie
3c13c8e734
pt3: changes to register updates
2019-06-02 00:04:44 -04:00
Peter Ferrie
b1b5f18707
pt3: optimize end detection and branch sizes
2019-06-01 23:56:36 -04:00
Peter Ferrie
5d503052f8
pt3: move volume table code so no need for jsr
2019-06-01 23:50:38 -04:00
Peter Ferrie
c8cbed652c
pt3: optimize load_sample and load_ornament
2019-06-01 23:46:14 -04:00
Peter Ferrie
c1f32e8cb3
optimize the volume table generation code
2019-06-01 01:45:59 -04:00
Peter Ferrie
0d3427b11d
optimize 1.77MHz to 1MHz conversion
...
fixed a few minor bugs here from qkumba's version as it was
making the validation tests fail. One was not zeroing out
mixer/envelope, and one was not saving some values properly
in the 1MHz case --- vmw
2019-06-01 01:35:55 -04:00
Peter Ferrie
390c560edc
optimize pattern selection code
2019-06-01 00:45:33 -04:00
Peter Ferrie
0a89e8fcfc
optimize effects code
2019-06-01 00:40:32 -04:00
Peter Ferrie
3c4d32eaba
optimize envelope code
2019-06-01 00:36:11 -04:00
Peter Ferrie
d0d0e06f1c
optimize amplitude code
2019-06-01 00:30:10 -04:00
Peter Ferrie
6f56cfc254
optimize note calculation
2019-06-01 00:26:39 -04:00
Peter Ferrie
dca5cb2e95
optimize version detection
2019-06-01 00:19:53 -04:00
Peter Ferrie
0ee00c4c54
remove some unnecessary clc
2019-06-01 00:16:05 -04:00
Vince Weaver
2e4a237fff
Revert "cut some bytes and cycles"
...
This reverts commit dd18ecd1d9
.
2019-05-30 10:54:03 -04:00
Vince Weaver
2694e6efca
Revert "still more"
...
This reverts commit 9491bce9f4
.
2019-05-30 10:53:33 -04:00
Vince Weaver
df10cec9f7
Revert "pt3: bump version number after qkumba optimization"
...
This reverts commit 25020da78b
.
2019-05-30 10:52:26 -04:00
Vince Weaver
25020da78b
pt3: bump version number after qkumba optimization
2019-05-30 01:22:15 -04:00
Peter Ferrie
9491bce9f4
still more
2019-05-29 13:34:10 -07:00
Peter Ferrie
dd18ecd1d9
cut some bytes and cycles
...
- fire_r_same/up are now 10/12 instead of 8/15 cycles
some jmps can probably be replaced with appropriate branches instead
2019-05-25 16:18:35 -07:00
Vince Weaver
ac1e471d6b
pt3: some more size optimization
...
mostly combining common code
2019-05-24 01:08:36 -04:00
Vince Weaver
df0e19cff9
pt3: remove unneeded variable
2019-05-23 20:53:41 -04:00
Vince Weaver
a4e247fd58
pt3: some more size optimization
2019-05-22 17:08:52 -04:00
Vince Weaver
4b54357b3a
pt3: add some cycle counting and docs
2019-05-22 15:52:05 -04:00
Vince Weaver
25950bddee
pt3: use the auto-generation of volume tables code
...
saved 100 bytes, didn't really improve speed at all (at least if you
take into account table gen at the beginning)
2019-05-22 15:37:00 -04:00
Vince Weaver
843b3bd835
pt3: working on auto-generating the tables
2019-05-22 00:31:31 -04:00
Vince Weaver
acc8c3f0fb
pt3: add more cycle counting
2019-05-20 12:40:35 -04:00
Vince Weaver
5b2ad332e4
pt3: more comments and cycle counting
2019-05-20 10:11:29 -04:00
Vince Weaver
f775b116da
pt3: remove an unused field
2019-05-20 09:50:49 -04:00
Vince Weaver
315d9ab621
pt3: code didn't compile
2019-05-19 23:44:57 -04:00
Vince Weaver
673d2d7703
pt3: minor changes
2019-05-19 23:42:13 -04:00
Vince Weaver
c2482b41b6
pt3: optimization notes
2019-05-19 22:11:56 -04:00
Vince Weaver
efcf749f4b
pt3: rename REGISTER_DUMP to AY_REGISTERS
...
makes the code a bit clearer
2019-05-17 13:25:02 -04:00
Vince Weaver
eded3c0908
pt3: add looping support
2019-05-17 13:19:04 -04:00
Vince Weaver
0a84e76e4e
pt3: add support for scaling the frequencies from 1.77MHz to 1MHz
...
The ZX Spectrum (default for pt3 files) runs the AY-3-8910 at 1.77MHz.
We do this by multiplying by 9/16 (which is a pain, but could be worse)
2019-05-16 22:16:50 -04:00
Vince Weaver
45f367f356
pt3: clean up the info screen stuff a bit
2019-05-16 20:33:12 -04:00
Vince Weaver
2ec2da0891
pt3: player supports multiple songs now
2019-05-15 14:13:54 -04:00
Vince Weaver
c4f9f1b6e3
pt3: get early-ending of patterns working
2019-05-14 12:27:06 -04:00
Vince Weaver
d2e3f7327a
pt3: add early-pattern end code
...
also now display memory on HGR page0 while playing
2019-05-14 11:52:50 -04:00
Vince Weaver
e549d24cc8
pt3: oops last commit stuck the speed check in slightly wrong place
2019-05-14 11:15:12 -04:00