Commit Graph

36 Commits

Author SHA1 Message Date
Rob McMullen
b817b9e1aa Made color selection in PNGs a little more forgiving 2017-06-30 14:13:42 -07:00
Rob McMullen
18101794b9 Added option to clobber registers in sprite code
* caller has to save what they need, but saves 26 cycles
2017-06-30 12:52:15 -07:00
Rob McMullen
6dfab0efb5 optimization to save the X mod value -- it's the same for every row 2017-06-30 12:33:27 -07:00
Rob McMullen
b3a4a5b5b4 generateBlitter: restructured to use self.asm and optimization to remove trailing iny when at the end of a row 2017-06-30 12:32:31 -07:00
Rob McMullen
8951869372 Added multi-file generation in one step using a prefix
* changed testcase to use second type of sprite
* added hand-coded 3x8 backing store
2017-06-29 23:16:49 -07:00
Rob McMullen
b2842a1c39 Backing store driver and sample implementation for 3 byte * 11 row sprites 2017-06-29 11:48:25 -07:00
Rob McMullen
5d550a6ef0 HiSprite: fixed binary constant formatting
* MAC/65 does indeed do binary constants
2017-06-26 12:40:19 -07:00
Rob McMullen
483b0a5903 Fixed bw column lookup table. We're indexing into a table of addresses, so multiply by 2! 2017-06-26 05:48:52 -07:00
Rob McMullen
d6666ff027 Fixed mask for bw sprites 2017-06-25 21:13:58 -07:00
Rob McMullen
a5d08f4284 Added mask and changed filler bit to match mask or sprite 2017-06-22 11:10:39 -07:00
Rob McMullen
bb06a8bf65 Changed optimization that skips the byte write to be based on mask value
* if mask is empty, no pixels change, so no need to write that byte
2017-06-22 10:36:04 -07:00
Rob McMullen
2c4a951a27 Determine palette bit from first *non-black* pixel on the row 2017-06-22 10:27:58 -07:00
Rob McMullen
a5907dc2e3 Simplified pixel color logic 2017-06-22 10:01:52 -07:00
Rob McMullen
9b9ebfcb0f Added -n argument to specify name of generated subroutine so I don't have to keep changing my test source when changing sprites 2017-06-22 09:39:40 -07:00
Rob McMullen
39ac771959 Percolate png transparent layer up to main loop 2017-06-21 22:44:45 -07:00
Rob McMullen
0820ad7458 Removed dependency on macro source file; expand the macros ourselves here 2017-06-21 14:28:22 -07:00
Rob McMullen
7ca6dd4ccd Added separate flags for row/col lookup table, and can be appended to sprite code 2017-06-21 14:11:48 -07:00
Rob McMullen
8b5a4afeab Added support for BW & Color HGR sprites & framework for supporting other screen types 2017-06-21 14:03:53 -07:00
Rob McMullen
1be718c206 Fixed MAC/65 support because it can't do binary constants 2017-06-20 22:09:27 -07:00
Rob McMullen
0f342f993e Added multiple bytes per line in data statements 2017-06-20 21:46:16 -07:00
Rob McMullen
3afe35febe Added processor and assembler syntax options
* added complete lookup table generation
2017-06-20 20:12:17 -07:00
Rob McMullen
d02300573d Initial working object-based generator 2017-06-20 15:59:56 -07:00
Rob McMullen
8a1de40e0e Converted intentation to spaces instead of tabs 2017-06-20 06:37:57 -07:00
Rob McMullen
b74d5141a1 Modifications to jump table for vanilla 6502 support
* added argparse for argument parsing & printing usage
2017-05-30 14:06:33 -07:00
Quinn Dunki
ca2bd7c586 Optimization & refinement
- Compiler now tracks cycle counts of blitters
- More interesting sample app
- Better VBL sync macro
2017-05-29 13:14:37 -07:00
Rob McMullen
ffcfab2ca2 pypng on my platform returns an iterator instead of a sequence of bytes, so have to force pixelData to a list 2017-04-29 19:36:01 -07:00
Quinn Dunki
537e1e0544 Put an old optimization back in 2017-03-26 11:02:22 -07:00
Quinn Dunki
2d92fa90cf Revert 2017-02-26 20:18:20 -08:00
Quinn Dunki
110760c8b1 Proof of concept for page flipping 2017-02-26 20:17:22 -08:00
Quinn Dunki
9284814222 Cleanup, early support for page 2 2017-02-25 16:30:30 -08:00
Quinn Dunki
386b338c23 Code cleanup
- Also fixed a bug with high bit determination
2016-12-25 13:43:14 -07:00
Quinn Dunki
56e75f426e Fixed background save/restore for 6-byte sprites
Also added interesting background test image and utility functions
2016-12-22 14:28:46 -08:00
Quinn Dunki
7eb3f6fdd7 Added support for the color white 2016-12-21 14:03:28 -08:00
Quinn Dunki
a37f15846f Cleanup 2016-09-10 11:04:57 -07:00
Quinn Dunki
dbe729e839 Basic shifted data unrolling working for violet and green 2016-08-18 12:12:11 -07:00
Quinn Dunki
6e2bcdb352 Rough first pass on python sprite compiler 2016-07-20 22:39:11 -05:00