Thursday, 3 March 2016

Room for improvement

Far from being the daunting and tedious task I thought it was going to be, I'm really enjoying the 6809 port to the Coco3. My rate of progress has far exceeded what I'd expected going into this, but I think it's more a testament to the quality of the original code than anything of my doing.

Without further ado, here's what I managed to concoct this evening.

Background objects rendered approximately correctly

Firstly, the sun/moon animates across the frame and the days increment. Only the background objects (which incidentally includes the player) are rendered and there's actually two more steps until they're placed in exactly the right position. First, a lot of objects have static X,Y adjustments applied during the object update routines, which are currently not implemented. Secondly, the sprite routines still only render at byte-aligned addresses. Regardless, the above screen shot suggests that things are looking pretty good otherwise.

Next task is to implement pixel-granularity sprite rendering. The sun/moon should then move smoothly across the frame and the background objects will be closer to their correct positions. I've already constructed the requisite look-up tables, just need to enhance the rendering routine. I've got a little more time tonight so I might squeeze in an update.

UPDATE: A bit of a late night but rendering is now pixel-granularity!

Look closely, it is better than the above screen shot
The question now is, how to proceed from here. I think I'll add the plumbing for the object update routines, only so I can add the simple static X,Y adjustments for the background objects. In the next screen shot, all objects should at least be at their correct pixel coordinates.

1 comment: