1
0
mirror of https://github.com/dschmenk/PLASMA.git synced 2024-07-20 13:28:56 +00:00
Commit Graph

427 Commits

Author SHA1 Message Date
Steven Flintham
b6efb90995 Allow optimiser to introduce DUP opcodes 2017-07-28 23:06:02 +01:00
Steven Flintham
e9c4e062c3 Add more peephole optimisations 2017-07-28 23:03:44 +01:00
Steven Flintham
7ad91aa9e3 Wrap macro constants in parentheses
Later commits assume they can use macro constants without needing to
provide their own parentheses.
2017-07-28 22:59:04 +01:00
Steven Flintham
8a672501b7 Refactor elimination of *current* op in optimiser
The code to handle this was duplicated in two places; this pulls it out
to a common chunk of code triggered by negative values of freeops.

This isn't a big win here, but it sets us up to re-use this code in
later commits.
2017-07-28 22:57:46 +01:00
ZornsLemma
5a2af29fd6 Merge pull request #3 from dschmenk/master
Merge latest upstream changes
2017-07-28 22:03:29 +01:00
dschmenk
c4912583de Add CFFB to portable VM with test case 2017-07-27 19:15:57 -07:00
David Schmenk
0ffaef968d Merge pull request #17 from ZornsLemma/cffb
New PLASMA opcode - CFFB
2017-07-27 07:14:42 -07:00
Steven Flintham
d5f5326962 Use opcode $5E for CFFB 2017-07-26 20:22:27 +01:00
Steven Flintham
8610d2f56e Add CFFB opcode 2017-07-18 20:37:43 +01:00
Peter Ferrie
60117f47bd write-combine without intermediate var 2017-07-12 15:26:19 -07:00
ZornsLemma
1b2a1b5b7a Merge pull request #2 from dschmenk/master
Merge latest upstream master
2017-07-11 18:59:41 +01:00
David Schmenk
72f0558974 Update VM byte codes to match new compiler 2017-07-10 17:46:17 -07:00
Dave Schmenk
976fddd094 Fix dereference from array (and found bug in dgr.pla with it) 2017-07-10 09:25:40 -07:00
ZornsLemma
7477f66acc Merge pull request #1 from dschmenk/master
Merge latest upstream master to my master
2017-07-08 01:00:39 +01:00
Dave Schmenk
0b95baaefc Fix predef paramaters, multiple per line, and asm defs with parameters 2017-06-07 19:26:03 -07:00
David Schmenk
92535477ff Optimize NOT before branch 2017-06-07 17:41:50 -07:00
David Schmenk
7d35fd7726 Clean up scan_rewind string parsing and add branch optimizations 2017-06-07 14:27:52 -07:00
David Schmenk
d7d50f3d37 Remove 8-bit bunch license that shouldn't be there. 2017-06-06 13:02:51 -07:00
David Schmenk
def57dc263 Fix some pointer to pointer problems and scan_rewind with string quotes 2017-06-06 12:27:59 -07:00
David Schmenk
47ed2014e3 On the road to 1.0: source code cleanup 2017-06-03 08:08:30 -07:00
David Schmenk
f1c11d6b97 On the road to 1.0: clarify zero return value definitions 2017-06-02 06:39:25 -07:00
David Schmenk
6cdbcdd059 On the road to 1.0: Update multiple return value description 2017-06-01 14:06:44 -07:00
dschmenk
3415077a2a On the way to 1.0: Document multi-value assignment/return values 2017-06-01 13:07:52 -07:00
dschmenk
45500004dd On the road to 1.0: optimize MUL/DIV by POW2 2017-06-01 12:23:29 -07:00
dschmenk
b19956b3ba On the road to 1.0 2017-05-31 18:31:04 -07:00
David Schmenk
4543667a37 Merge branch 'master' of https://github.com/dschmenk/PLASMA 2017-05-20 11:54:22 -07:00
David Schmenk
acbdde7879 Add Apple II GS support to SPI gameport interface 2017-05-20 11:52:52 -07:00
David Schmenk
f6315d1bd1 Prepare for extended ops 2017-04-30 08:25:05 -07:00
dschmenk
2407d1bb7e Fix oops of moving increase duration code 2017-04-29 07:30:16 -07:00
dschmenk
c091ae0084 Fix oops of moving increase duration code 2017-04-29 07:29:21 -07:00
dschmenk
734de4a5e3 ReEewrite sequence playback to be fast enough to not pause during state
changes
Hand edit a few tone values to sound better
2017-04-28 17:19:26 -07:00
dschmenk
fbbb72c369 Hand tune each not as best as possible 2017-04-28 12:08:32 -07:00
dschmenk
0152b5554c Revert to previous frequencies 2017-04-27 22:33:36 -07:00
David Schmenk
5e7a949133 Revert to previous frequencies 2017-04-27 22:31:59 -07:00
dschmenk
eba88e451c Remove initial phase toggle 2017-04-27 21:42:57 -07:00
David Schmenk
f91175da61 Merge branch 'master' of https://github.com/dschmenk/PLASMA 2017-04-27 21:42:05 -07:00
dschmenk
0c488bd060 Remove inital phase toggle 2017-04-27 21:40:44 -07:00
David Schmenk
feecad3529 Remove initial phise toggle 2017-04-27 21:39:36 -07:00
David Schmenk
fce84e5c9e Add speaker phase information 2017-04-27 21:23:08 -07:00
David Schmenk
14efeab738 Add note duration section 2017-04-27 20:52:35 -07:00
dschmenk
26dcd43c2e Make it 1.2 with the phase fix 2017-04-27 20:26:06 -07:00
dschmenk
d74435cb61 Flip phase of speaker on entry/exit. Seems to work more often than not 2017-04-27 19:48:19 -07:00
dschmenk
d51f737af2 Add speaker phase adjust 2017-04-27 13:32:05 -07:00
David Schmenk
0cc71bff94 Merge branch 'master' of https://github.com/dschmenk/PLASMA 2017-04-27 13:31:01 -07:00
David Schmenk
73574a9ba5 Add speaker phase adjust 2017-04-27 13:30:32 -07:00
David Schmenk
57c3034bcb Table of keys to notes 2017-04-27 13:12:42 -07:00
dschmenk
3d7a60fd2b Fix playback when LFO == 0 2017-04-26 22:04:37 -07:00
David Schmenk
2184703454 Merge branch 'master' of https://github.com/dschmenk/PLASMA 2017-04-26 20:45:32 -07:00
David Schmenk
5d53c14101 Fix playback previous octave 2017-04-26 20:43:10 -07:00
David Schmenk
f0382f93df Add rest note recording 2017-04-26 20:07:53 -07:00