All basic colors working

This commit is contained in:
Quinn Dunki 2016-09-01 13:13:27 -07:00
parent 53b2080b66
commit 2d1a5c6f34
8 changed files with 533 additions and 3 deletions

View File

@ -8,6 +8,8 @@
/* Begin PBXFileReference section */
70166CF81D6E2BE1002F1334 /* macros.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = macros.s; sourceTree = "<group>"; };
70166CF91D78BD1B002F1334 /* spritegen2.s */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; path = spritegen2.s; sourceTree = "<group>"; };
70166CFA1D78BD1B002F1334 /* spritegen3.s */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; path = spritegen3.s; sourceTree = "<group>"; };
707005BE1D3EC75F00623A10 /* Makefile */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
707005BF1D3EC7FD00623A10 /* hgrtest.s */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; path = hgrtest.s; sourceTree = "<group>"; };
707005C01D3FD65900623A10 /* hgrtable.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = hgrtable.s; sourceTree = "<group>"; };
@ -31,6 +33,8 @@
7090ABAE1D419C3E00F02EAA /* spritedata1.s */,
7090ABAC1D418B8900F02EAA /* spritegen0.s */,
7090ABAD1D418B8900F02EAA /* spritegen1.s */,
70166CF91D78BD1B002F1334 /* spritegen2.s */,
70166CFA1D78BD1B002F1334 /* spritegen3.s */,
707005C01D3FD65900623A10 /* hgrtable.s */,
7090ABAF1D453FDC00F02EAA /* hgrtable2.s */,
);

View File

@ -3,7 +3,7 @@
import sys,os,png
class Colors:
black,magenta,green = range(3)
black,magenta,green,orange,blue = range(5)
@ -56,7 +56,7 @@ def layoutSpriteChunk(pixeldata,width,height,shift):
if pixel == Colors.black:
bitStream += "00"
else:
if pixel == Colors.green:
if pixel == Colors.green or pixel == Colors.orange:
bitStream += "01"
else:
bitStream += "10"
@ -83,7 +83,11 @@ def layoutSpriteChunk(pixeldata,width,height,shift):
bitChunk = bitChunk[::-1]
byteSplits[byteIndex] = "0" + bitChunk
highBit = "0"
if pixel == Colors.orange or pixel == Colors.blue:
highBit = "1"
byteSplits[byteIndex] = highBit + bitChunk
bitPos += 7
for chunkIndex in range(len(byteSplits)):
@ -126,6 +130,12 @@ def pixelColor(pixeldata,row,col):
else:
if r==0 and g==255 and b==0:
color = Colors.green
else:
if r==0 and g==0 and b==255:
color = Colors.blue
else:
if r==255 and g>0 and b==0:
color = Colors.orange
return color

BIN
box_blu.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 B

BIN
box_org.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 165 B

Binary file not shown.

View File

@ -83,6 +83,30 @@ loop:
sta PARAM3
jsr BlitSprite
lda #88
sta PARAM1
lda #<BOX_GRN_SHIFT0
sta PARAM2
lda #>BOX_GRN_SHIFT0
sta PARAM3
jsr BlitSprite
lda #96
sta PARAM1
lda #<BOX_BLU_SHIFT0
sta PARAM2
lda #>BOX_BLU_SHIFT0
sta PARAM3
jsr BlitSprite
lda #104
sta PARAM1
lda #<BOX_ORG_SHIFT0
sta PARAM2
lda #>BOX_ORG_SHIFT0
sta PARAM3
jsr BlitSprite
; lda #$ff
; jsr ROMWAIT
@ -459,6 +483,8 @@ venetianFill_inner:
.include "spritedata1.s"
.include "spritegen0.s"
.include "spritegen1.s"
.include "spritegen2.s"
.include "spritegen3.s"
; Suppress some linker warnings - Must be the last thing in the file

245
spritegen2.s Normal file
View File

@ -0,0 +1,245 @@
BOX_BLU_SHIFT0: ;4 bytes per row
.byte %11010101
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11010101
.byte %10000000
.byte %10000000
.byte %10000000
BOX_BLU_SHIFT1: ;4 bytes per row
.byte %11010100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %11010100
.byte %10000010
.byte %10000000
.byte %10000000
BOX_BLU_SHIFT2: ;4 bytes per row
.byte %11010000
.byte %10001010
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %11010000
.byte %10001010
.byte %10000000
.byte %10000000
BOX_BLU_SHIFT3: ;4 bytes per row
.byte %11000000
.byte %10101010
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10101010
.byte %10000000
.byte %10000000
BOX_BLU_SHIFT4: ;4 bytes per row
.byte %10000000
.byte %10101010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10101010
.byte %10000001
.byte %10000000
BOX_BLU_SHIFT5: ;4 bytes per row
.byte %10000000
.byte %10101000
.byte %10000101
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10101000
.byte %10000101
.byte %10000000
BOX_BLU_SHIFT6: ;4 bytes per row
.byte %10000000
.byte %10100000
.byte %10010101
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010101
.byte %10000000

245
spritegen3.s Normal file
View File

@ -0,0 +1,245 @@
BOX_ORG_SHIFT0: ;4 bytes per row
.byte %10101010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10000010
.byte %10000001
.byte %10000000
.byte %10000000
.byte %10101010
.byte %10000001
.byte %10000000
.byte %10000000
BOX_ORG_SHIFT1: ;4 bytes per row
.byte %10101000
.byte %10000101
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10001000
.byte %10000100
.byte %10000000
.byte %10000000
.byte %10101000
.byte %10000101
.byte %10000000
.byte %10000000
BOX_ORG_SHIFT2: ;4 bytes per row
.byte %10100000
.byte %10010101
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010000
.byte %10000000
.byte %10000000
.byte %10100000
.byte %10010101
.byte %10000000
.byte %10000000
BOX_ORG_SHIFT3: ;4 bytes per row
.byte %10000000
.byte %11010101
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11000001
.byte %10000000
.byte %10000000
.byte %10000000
.byte %11010101
.byte %10000000
.byte %10000000
BOX_ORG_SHIFT4: ;4 bytes per row
.byte %10000000
.byte %11010100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %10000100
.byte %10000010
.byte %10000000
.byte %10000000
.byte %11010100
.byte %10000010
.byte %10000000
BOX_ORG_SHIFT5: ;4 bytes per row
.byte %10000000
.byte %11010000
.byte %10001010
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %10010000
.byte %10001000
.byte %10000000
.byte %10000000
.byte %11010000
.byte %10001010
.byte %10000000
BOX_ORG_SHIFT6: ;4 bytes per row
.byte %10000000
.byte %11000000
.byte %10101010
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10100000
.byte %10000000
.byte %10000000
.byte %11000000
.byte %10101010
.byte %10000000