English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 30 June 2023, 14:42   #1
Galahad/FLT
Going nowhere
 
Galahad/FLT's Avatar
 
Join Date: Oct 2001
Location: United Kingdom
Age: 50
Posts: 9,014
Copperlists vs not having them.

Something occurred to me today, and I don't know the a swer, so here we are.

Not every game requires using a copper list, if the game or demo or intro doesn't require colour reloading of any sort or using it to do blitter queues, it's entirely possible like games of old to simply put the required values into their respective places by simply writing them once using the CPU.

Now my question is this. Is there any speed benefits whatsoever, where by not using a copper list at all, means the CPU or blitter gets to use the slots that ordinarily would be used by to copper chip running a copper list?

I'm for instance writing a conversion for a ompany, and really, there is absolutely no reason other than convenience that I even need to have a copper list running at all, and the chip memory taken up by that copperlist can be put toward something else.

So other than gaining a few bytes in memory, any other benefits?
Galahad/FLT is offline  
Old 30 June 2023, 14:58   #2
ross
Defendit numerus
 
ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 53
Posts: 4,480
You may very well not use the copper list if the only things you need to change are frame initializations (I've done this a few times).
You just have to remember that you have the VBI setup the bitplane and sprite pointers.

Be warned though: you can have problem on a frame skip (or better, a doubled frame, ie slowdown) *.
Video data (or sprites) would be fetched from wrong locations and video glitches would occur.

Of course the DMA slots/bus cycles not used by the copper would be free for other accesses.

EDIT: *
Just to clarify: this is a very remote occurrence.
If you have a short VBI, and the higher priority IRQs break it briefly, there is no reason you can't afford setting pointers during vertical blank.

Last edited by ross; 30 June 2023 at 15:16.
ross is offline  
Old 30 June 2023, 21:59   #3
paraj
Registered User
 
paraj's Avatar
 
Join Date: Feb 2017
Location: Denmark
Posts: 1,155
What ross says (obviously), but since you usually want at least bitplane pointers updated it's hard to beat the copper for efficiency (even with AGA). Really think the number of times where you're better off using the CPU instead of copper is going to be really low.
paraj is offline  
Old 30 June 2023, 22:11   #4
arcanist
Registered User
 
Join Date: Dec 2017
Location: Austin, TX
Age: 41
Posts: 410
I've done it in a 512 byte intro to save space. Easy enough to poll on the vertical blank interrupt and reprogram the bitplane pointers.
arcanist 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
Switching Copperlists DanielAllsopp Coders. Asm / Hardware 4 13 October 2021 12:39
How to do multiple copperlists Havie Coders. Blitz Basic 5 25 April 2020 10:54
Copperlists and screen sizes Jherek Carnelia Coders. Asm / Hardware 2 12 November 2019 18:59
Multiple Copperlists and Sprites Havie Coders. Blitz Basic 4 03 October 2018 21:10

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 01:31.

Top

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