English Amiga Board


Go Back   English Amiga Board > Coders > Coders. System

 
 
Thread Tools
Old 10 March 2024, 11:28   #1
damex
Registered User
 
Join Date: Aug 2019
Location: PL
Posts: 15
Problem with bob double buffering

Hi!

I'm drawing some bobs using animtools from the Amiga Developer Docs.

I'm experiencing some flicker when moving the bobs around so I want to see if double buffering will fix the issue. However when I enable `dbuf` in the `NEWBOB` structure I get some artefacts when bobs are moving and also I get a guru meditation when I exit the program.

Any idea what might be causing the issue?

Here is a video that demonstrates the issue.

And here is the relevant part of my program:
Code:
/* 16x8, 5 planes */
ULONG chip bobData[] =
{
  0xf7008f00,0x8700a700,0xc500a700,0xd900ff00,
  0xff00a300,0x97008500,0x9f008700,0xa100ff00,
  0xf700a700,0x93008300,0xc1008300,0xe700ff00,
  0xcf00a700,0x9300a100,0xa500a300,0x8300ff00,
  0x00001800,0x08000000,0x00000000,0x00000000,
};

struct Bob *makeBobForUnit(SHORT positionX, SHORT positionY) {
  struct Bob *bob;

  /* information for the new bob
  ** structure defined in animtools.h
  */
  NEWBOB newBob = {
      (SHORT *)bobData,   /* image data               */
      1,                  /* width in WORDs           */
      8,                  /* height in lines          */
      5,                  /* image depth              */
      31,                 /* plane pick               */
      0,                  /* plane on off             */
      SAVEBACK | OVERLAY, /* vsprite flags            */
      1,                  /* dbuf (0 == FALSE)        */
      SBMDEPTH,           /* raster depth             */
      0,                  /* x position               */
      0,                  /* y position               */
      0,                  /* hit mask                 */
      0,                  /* me mask                  */
  };

  newBob.nb_X = positionX;
  newBob.nb_Y = positionY;

  if (NULL == (bob = makeBob(&newBob))) {
    printf("Error: Can't make bob for unit\n");
  }

  return bob;
}
damex is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
AMOS - Double Buffering ricky500 Coders. AMOS 6 01 January 2018 13:48
Double Buffering MartinW Coders. C/C++ 8 11 October 2017 00:20
Latency tests - No difference between "No buffering" and "Double buffering" Dr.Venom support.WinUAE 6 24 September 2017 10:18
how to display bob correctly with double buffering Blackgoat Coders. AMOS 2 15 March 2016 22:10
flawless double buffering dalton Coders. General 2 17 May 2011 07:09

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 03:52.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.09717 seconds with 15 queries