[Coco] Project update!

Hugo Dufort hugo at seshat.ca
Fri Mar 27 23:28:37 EDT 2015


After two weeks, my humble game programming project is giving some 
results. I'm sure this has been done a hundred times before, but it's 
new for me, as I have never developed anything like that in Assembler. 
Now I can display sprites, buffers and tiles, perform page copy and page 
flipping, etc. There is still a LOT of work to do before I can finally 
create some original graphics and work on a real game level. Sadly the 
game won't be ready in time for the Cocofest, but I will keep working!

Please note that the animation "hickups" are caused by the video recorder.

Video link: http://avantrad.ca/upload/hugo/coco3/spriter_demo.mp4

Current features:
- Create sprites and tiles from a Base64-encoded string, from a linear 
buffer in memory, or from a tileset page.
- Display sprites with transparency.
- Buffers now keep their screen position pointer for easier background 
"restoring".
- Display 16x16 pixels tiles at fixed positions (20x12.5 grid) for fast 
calculation.
- Display 8x8 pixels tiles at fixed positions (40x25 grid) for fast 
calculation.
- Perform page flipping for smooth animation with almost no flicker.
- Encode graphics in Base64 and auto-generate code using an external 
Java utility.
- Works with a standard Coco3 with 128k (according to VCC!).

Features I'm currently working on:
- Better/more efficient tileset functions
- Management of multiple moving sprites using position/movement data 
structures in memory.
- Collision detection with platforms; strict detection and reaction 
(walk, jump, fall, bounce).
- Collision detection between sprites; lazy "box" detection.
- Keyboard controls.

Despite page flipping, there is still some flicker, which might be 
caused by the program not taking the VSYNC into account. Quite frankly, 
I have no idea how to do that. I had to add a delay loop in order to 
reduce flicker, which is worse when the sprites are in some areas of the 
screen. Any help about Vsync interrupts or flags is welcome!

Another problem I have right now is that VCC doesn't like ".bin" files 
that were created with Phoenix/CCASM and copied on a DSK. Probably some 
program option/switch I have overlooked.

Hugo



---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com


More information about the Coco mailing list