English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 10 December 2010, 11:29   #1
h0ffman
Registered User
 
Join Date: Aug 2008
Location: Salisbury
Posts: 750
Artifacts blipping around on screen, what am I doing wrong?

Hi guys

Hope you can help. Finally started reading the Amiga hardware reference manual so I can finally understand how the playfield and bitplanes work. Following the manual i've managed to be a single bitplane displayed, however, there seems to be weird artifacts blipping on the screen from time to time. I'm pretty sure it is a common problem but as I'm a total n00b i'm not sure whats going on.

I am currently writting this on an A1200.

Cooper looks like this..

Code:
_cCopper    dc.w    bplcon0,$1200    ; set as 1 bp display
        dc.w    bplcon1,$0000    ; set scroll 0
        dc.w    bpl1mod,$0000
        dc.w    bpl2mod,$0000    
        dc.w    ddfstrt,$38    ; datafetch start stop
        dc.w    ddfstop,$d0
        dc.w    diwstrt,$2c81    ; window start stop
        dc.w    diwstop,$2cc1
        dc.w    color,$000
        dc.w    color+2,$fff
_cPlanes    dc.w    bplpt,$0
        dc.w    bplpt+2,$0
        dc.w    $ffff,$fffe
        dc.w    $ffff,$fffe
This is the code which kicks off the copper / fills the bit plane pointers etc.

Code:
DemoStart    movem.l    d0-a6,-(sp)

        lea    $dff000,a4        ; hw base
        
        move.l    #_pPlane1,d0
        lea    _cPlanes,a0        
        move.w    d0,6(a0)
        swap    d0
        move.w    d0,2(a0)
        
        move.l    #_cCopper,cop1lc(a4)

        move.l    #50,d0
        lea    _pPlane1,a0
FillPlane    move.l    #$f0000000,(a0)+
        move.l    #$ff0f0f0f,(a0)+
        move.l    #$00000fff,(a0)+
        move.l    #$00000fff,(a0)+
        move.l    #$ff0f0f0f,(a0)+
        move.l    #$ff0f0f0f,(a0)+
        move.l    #$00000fff,(a0)+
        move.l    #$00000fff,(a0)+
        move.l    #$ffffffff,(a0)+
        move.l    #$ffffffff,(a0)+

        dbra    d0,FillPlane
        
.lp         btst    #6,$bfe001              ; 
            bne.s   .lp                     ;
            
            movem.l    (sp)+,d0-a6
            rts
Any help would be great.

Cheers
h0ffman is offline  
Old 10 December 2010, 11:47   #2
StingRay
move.l #$c0ff33,throat
 
StingRay's Avatar
 
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,863
Quote:
Originally Posted by h0ffman View Post
Following the manual i've managed to be a single bitplane displayed, however, there seems to be weird artifacts blipping on the screen from time to time.
My guess is that you didn't initialize the sprite pointers properly and thus you'll see "random" sprite data from time to time. To fix that you need to either completely disable sprite DMA or create an empty sprite in chip ram and initalize the sprite pointers, i.e. they need to point to that empty sprite.
StingRay is offline  
Old 10 December 2010, 12:03   #3
h0ffman
Registered User
 
Join Date: Aug 2008
Location: Salisbury
Posts: 750
Ahhhh, that makes sense. Cheers, I'll go read the sprite chapter now.

Sorted, cheers sting, legend!

Last edited by TCD; 10 December 2010 at 12:28. Reason: Back-to-back posts merged. Use the edit function.
h0ffman 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
Remove A2024 artifacts option mark_k request.UAE Wishlist 4 11 December 2012 13:39
"Remove interlace artifacts" flickering in latest versions Zosite support.WinUAE 5 12 October 2012 11:25
Gfx artifacts with native AGA but not with RTG Geijer support.Other 5 09 August 2011 07:45
A600 Strange colors and artifacts gira93 support.Hardware 16 12 May 2011 00:26
Winuae RTG pointer clipping + artifacts smoorke support.WinUAE 6 13 February 2010 14:54

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 07:08.

Top

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