Jump to content
Cyprian

Object Processor and the object list

Recommended Posts

In JagDox we can read that the object list has to be created every VBL due to OP modify it. What is the reason of that "modification"?

 

https://www.mulle-kybernetik.com/jagdox/op.html

2.5   The object in the objectlist are *modified* by the OP. This means      that an object list is only good for one frame. You need to      continually refresh your object list each VBLANK.

By a modification I understand the process of reading a phrase from a memory and writing it modified back. It is two cycles per phrase. Am I correct?

 

 

Share this post


Link to post
Share on other sites

The OP itself updates the memory in the list. As it builds the display a scanline at a time it does some logic on members . Now this is vague memories from years ago , but a normal sprite will have a start Y and an end Y and a data pointer for the current Y. The OP will ignore it until the Y matches . I then think as long as its not the end Y the start Y gets updated and the data pointer will be updated to the next line down.

Share this post


Link to post
Share on other sites

The Object Processor works this way because it renders the screen one line at a time, not one object at a time.

So for each object, it needs to remember what has already been drawn, and what remains to be drawn.

If it didn't modify the object list, it would need extra memory for that, which is a problem since there is no hard limit on the number of objects per screen.

Edited by Zerosquare
  • Like 4

Share this post


Link to post
Share on other sites

It would be nice if the Object Processor could calculate the bitmap address using the scan line number (address = bitmap_base + (current_scan_line - bitmap_y) * image_width ), so you don't need to rebuild the list on each frame.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...