1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-11-24 14:31:15 +00:00

Shortened clearscreen a bit more.

This commit is contained in:
jespergravgaard 2019-06-19 02:07:50 +02:00
parent cbe58167da
commit 29f7265341
3 changed files with 10 additions and 20 deletions

View File

@ -33,13 +33,6 @@ struct ProcessingChar {
// Distance value meaning not found
const word NOT_FOUND = 0xffff;
// Status for a sprite being processed
enum SpriteStatus {
STATUS_FREE,
STATUS_NEW,
STATUS_PROCESSING
};
// Struct holding sprite being processed
struct ProcessingSprite {
// sprite x-position. Fixed point [12.4]. Values (24-336)
@ -56,8 +49,8 @@ struct ProcessingSprite {
byte ptr;
// sprite color
byte col;
// status of the processing (0: free, 1: new, 2: processing)
enum SpriteStatus status;
// status of the processing
enum { STATUS_FREE, STATUS_NEW, STATUS_PROCESSING } status;
// Pointer to screen char being processed (used for deletion)
byte* screenPtr;
};

View File

@ -1145,6 +1145,9 @@ SYMBOL TABLE SSA
(word) ProcessingChar::dist
(byte) ProcessingChar::x
(byte) ProcessingChar::y
(const byte) ProcessingSprite::$0::STATUS_FREE = (byte) 0
(const byte) ProcessingSprite::$0::STATUS_NEW = (byte) 1
(const byte) ProcessingSprite::$0::STATUS_PROCESSING = (byte) 2
(byte) ProcessingSprite::col
(byte) ProcessingSprite::id
(byte) ProcessingSprite::ptr
@ -1193,9 +1196,6 @@ SYMBOL TABLE SSA
(const byte) STATUS_FREE = (byte) 0
(const byte) STATUS_NEW = (byte) 1
(const byte) STATUS_PROCESSING = (byte) 2
(const byte) SpriteStatus::STATUS_FREE = (byte) 0
(const byte) SpriteStatus::STATUS_NEW = (byte) 1
(const byte) SpriteStatus::STATUS_PROCESSING = (byte) 2
(byte*) VIC_CONTROL
(byte*) VIC_CONTROL#0
(word*) VXSIN
@ -2916,11 +2916,13 @@ Constant inlined main::$18 = (word*)(const struct ProcessingSprite[NUM_PROCESSIN
Constant inlined main::$19 = (word*)(const struct ProcessingSprite[NUM_PROCESSING#0]) PROCESSING#0+(const byte) OFFSET_STRUCT_PROCESSINGSPRITE_VX
Constant inlined processChars::numActive#0 = (byte) 0
Constant inlined getCharToProcess::closest_x#0 = (byte) 0
Constant inlined ProcessingSprite::$0::STATUS_FREE = (byte) 0
Constant inlined startProcessing::$24 = (const byte) NUM_PROCESSING#0-(byte) 1
Constant inlined startProcessing::i1#0 = (byte) 0
Constant inlined irqTop::$1 = &interrupt(HARDWARE_ALL)(void()) irqBottom()
Constant inlined initSprites::$0 = (const byte) NUM_PROCESSING#0*(byte) $40
Constant inlined initSprites::$1 = (const byte*) SPRITE_DATA#0+(const byte) NUM_PROCESSING#0*(byte) $40
Constant inlined ProcessingSprite::$0::STATUS_NEW = (byte) 1
Constant inlined mul8u::res#0 = (byte) 0
Constant inlined main::dst#0 = (const byte[$3e8]) SCREEN_COPY#0
Constant inlined processChars::i#0 = (byte) 0
@ -2954,6 +2956,7 @@ Constant inlined main::$21 = (byte*)(const struct ProcessingSprite[NUM_PROCESSIN
Constant inlined main::$22 = (byte*)(const struct ProcessingSprite[NUM_PROCESSING#0]) PROCESSING#0+(const byte) OFFSET_STRUCT_PROCESSINGSPRITE_PTR
Constant inlined setupRasterIrq::$1 = <(const byte) RASTER_IRQ_TOP#0
Constant inlined startProcessing::i#0 = (byte) 0
Constant inlined ProcessingSprite::$0::STATUS_PROCESSING = (byte) 2
Constant inlined main::$5 = (const byte*) SCREEN#0+(word) $3e8
Constant inlined startProcessing::$40 = (byte**)(const struct ProcessingSprite[NUM_PROCESSING#0]) PROCESSING#0+(const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR
Constant inlined main::$4 = (const byte*) SCREEN#0+(word) $3e7
@ -6705,8 +6708,8 @@ Uplift Scope [initSquareTables] 66: zp ZP_BYTE:28 [ initSquareTables::x_dist#0 i
Uplift Scope [main] 27.5: zp ZP_WORD:2 [ main::src#2 main::src#1 ] 22: zp ZP_WORD:4 [ main::dst#2 main::dst#1 ] 22: zp ZP_BYTE:40 [ main::$26 ] 22: zp ZP_BYTE:41 [ main::$27 ] 22: zp ZP_BYTE:42 [ main::$28 ] 22: zp ZP_BYTE:43 [ main::$29 ] 22: zp ZP_WORD:51 [ main::center_dist#0 ] 20.17: zp ZP_BYTE:6 [ main::i#2 main::i#1 ] 12.22: zp ZP_BYTE:44 [ main::$16 ] 5.5: zp ZP_BYTE:49 [ main::center_x#0 ] 5.5: zp ZP_BYTE:50 [ main::center_y#0 ]
Uplift Scope [initSprites] 33: zp ZP_WORD:24 [ initSprites::sp#2 initSprites::sp#1 ] 33: zp ZP_BYTE:26 [ initSprites::i#2 initSprites::i#1 ]
Uplift Scope [ProcessingChar]
Uplift Scope [SpriteStatus]
Uplift Scope [ProcessingSprite]
Uplift Scope [ProcessingSprite::$0]
Uplift Scope [setupRasterIrq]
Uplift Scope [irqTop]
Uplift Scope [irqBottom]
@ -6722,8 +6725,8 @@ Uplifting [main] best 295240 combination zp ZP_WORD:2 [ main::src#2 main::src#1
Limited combination testing to 100 combinations of 20736 possible.
Uplifting [initSprites] best 295120 combination zp ZP_WORD:24 [ initSprites::sp#2 initSprites::sp#1 ] reg byte x [ initSprites::i#2 initSprites::i#1 ]
Uplifting [ProcessingChar] best 295120 combination
Uplifting [SpriteStatus] best 295120 combination
Uplifting [ProcessingSprite] best 295120 combination
Uplifting [ProcessingSprite::$0] best 295120 combination
Uplifting [setupRasterIrq] best 295120 combination
Uplifting [irqTop] best 295120 combination
Uplifting [irqBottom] best 295120 combination
@ -8969,9 +8972,6 @@ FINAL SYMBOL TABLE
(const byte) STATUS_FREE STATUS_FREE = (byte) 0
(const byte) STATUS_NEW STATUS_NEW = (byte) 1
(const byte) STATUS_PROCESSING STATUS_PROCESSING = (byte) 2
(const byte) SpriteStatus::STATUS_FREE STATUS_FREE = (byte) 0
(const byte) SpriteStatus::STATUS_NEW STATUS_NEW = (byte) 1
(const byte) SpriteStatus::STATUS_PROCESSING STATUS_PROCESSING = (byte) 2
(byte*) VIC_CONTROL
(const byte*) VIC_CONTROL#0 VIC_CONTROL = (byte*) 53265
(word*) VXSIN

View File

@ -105,9 +105,6 @@
(const byte) STATUS_FREE STATUS_FREE = (byte) 0
(const byte) STATUS_NEW STATUS_NEW = (byte) 1
(const byte) STATUS_PROCESSING STATUS_PROCESSING = (byte) 2
(const byte) SpriteStatus::STATUS_FREE STATUS_FREE = (byte) 0
(const byte) SpriteStatus::STATUS_NEW STATUS_NEW = (byte) 1
(const byte) SpriteStatus::STATUS_PROCESSING STATUS_PROCESSING = (byte) 2
(byte*) VIC_CONTROL
(const byte*) VIC_CONTROL#0 VIC_CONTROL = (byte*) 53265
(word*) VXSIN