English Amiga Board


Go Back   English Amiga Board > Coders > Coders. Asm / Hardware

 
 
Thread Tools
Old 01 September 2022, 19:29   #1
Rock'n Roll
German Translator
 
Rock'n Roll's Avatar
 
Join Date: Aug 2018
Location: Drübeck / Germany
Age: 49
Posts: 199
hypotetical blitter question

move.w #$0100,$dff040 ; BLTCON0: only channel D is activated

the blitter is a well designed hardware "chip", but I asked me for
a long time is the bit for output channel D (USED) useless? Because every
blitt needs an activated channel D, so this bit is always set to 1.

Are there blitter operations where channel D could be set to 0?
(From my side, the USED could be internaly hardwired set to 1,
if BLTCON0 is set to "normal" mode.)
And then this bit would be free for other things, maybe as a Shifter-
Select Bit (Bit8=0 - ASH, Bit8=1 CSH for a C-Shifter? )

2nd Question: There is no shifter for channel C, but there are
4 unused bits in BLTCON1 (bits 11 to 8 are set to 0). It could be
used for CSH3 - CSH0. Has a C-shifter never been missed?
Rock'n Roll is offline  
Old 01 September 2022, 19:40   #2
Jobbo
Registered User
 
Jobbo's Avatar
 
Join Date: Jun 2020
Location: Druidia
Posts: 389
One use is for collision detection. You run a blit with no stored results and just check BZERO bit in DMACONR for any collisions.

Not something I've tried but that seems like the main intent of the design.
Jobbo is offline  
Old 02 September 2022, 08:38   #3
Rock'n Roll
German Translator
 
Rock'n Roll's Avatar
 
Join Date: Aug 2018
Location: Drübeck / Germany
Age: 49
Posts: 199
yes, of course, I don't remembered this! The example code could be found in lezione10h1.s in the ramjam course.

The other point: Maybe it makes no sense to discuss things that not came, but hypothetical a C-shifter would
give us more freedom. The Cookie-Cut D=AB+(NOT A)C is in this form, because only the channels A and B has a
shifter and channel C not. So, the channels are not interchangeable in any combination.

An other limitation what I don't like is:
Why is lea bitplane,d0 not possible? The command lea could also load a 32Bit-adress in a dataregister.
So we have always to write a move.l #bitplane,d0. (But that's the way it is.)
Rock'n Roll is offline  
Old 02 September 2022, 09:20   #4
a/b
Registered User
 
Join Date: Jun 2016
Location: europe
Posts: 1,066
Because it's not logical. Data and address regs are not identical functionally, each group has a specific purpose. Also, lea opcode doesn't have room to specify 16 regs.

I would rather complain about eor not having <ea>,dx version, tst pc-relative modes being 020+, index scaling being 020+ (makes me cry every time).
a/b 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
Quick question about the Blitter (and image stride) chadderack Coders. Asm / Hardware 10 03 October 2021 19:13
Newbie question: is this the speed of the blitter? Or am I doing something wrong? pushead Coders. Asm / Hardware 4 15 April 2021 02:52
Blitter Line reverse drawing question sandruzzo Coders. Asm / Hardware 9 20 February 2021 05:52
Question about blitter speed / DMA usage LaBodilsen Coders. Asm / Hardware 3 25 January 2018 11:14
Blitter Question. cdoty Coders. General 11 06 May 2005 15:22

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

Top

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