ParaJVE Bugtracker

Viewing Issue Simple Details Jump to Notes ] << ] >> ] View Advanced ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0000013 [ParaJVE] Emulation > Display minor always 2008-12-03 12:49 2009-01-18 17:26
Reporter parabellum View Status public  
Assigned To parabellum
Priority high Resolution open  
Status assigned   Product Version Release 0.6.0
Summary 0000013: Graphics garbage when displaying text in Moon Lander
Description The Moon Lander game obviously uses some hand-crafted routines to display its text, and the result is completely unreadable in the emulator (see attached screenshots).
Additional Information Attached the MoonLander ROM as it is not shipped in ParaJVE yet.
Tags Graphics
Cartridge Moon Lander
Attached Files ? file icon MoonLander.bin [^] (32,768 bytes) 2008-12-03 12:49
png file icon bug_moonlander1.png [^] (8,487 bytes) 2008-12-03 12:50
png file icon bug_moonlander2.png [^] (5,068 bytes) 2008-12-03 12:51
png file icon bug_moonlander3.png [^] (5,423 bytes) 2008-12-03 12:51

- Relationships
related to 0000007confirmed Vector text position not properly aligned 

-  Notes
(0000006)
parabellum (administrator)
2008-12-03 14:19
edited on: 2008-12-03 14:24

The text is drawn with a special routine that seem to proceed like that:
  • position the beam to the (left,top) coodinate of the text string
  • Line 1 : draw the line content as the beam moves from left to right (odd lines)
  • moves one line down -> the beam is now located at (right,top+1)
  • Line 2 : draw the line content as the beam moves from right to left (even lines)
  • moves one line down -> the beam is now located at (left,top+2)
  • repeat the last 4 steps for all the lines (repeat two times)
This is a neat optimisation as this routine draws text about twice as fast as the original ROM routine does (because it also draws when the beam returns back to the left - whereas the original routine was not drawing anything during the right->left movement).

The problem is that the emulator analog timing gets tricked by this behaviour... I'll have to disassemble the rom and locate the routine to see if there's any special 6522 code in it.



Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker