English Amiga Board


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

 
 
Thread Tools
Old 28 September 2018, 01:10   #1
Yragael
Registered User

 
Join Date: Jun 2017
Location: Paris
Posts: 43
BPLCON1 scroll values in HiRes

Hi guys,


I forgot how the horizontal scroll values (PF2Hx bits in BPLCON1) work in HiRes (bit 15 HIRES of BPLCON0 is set). It seems that the maximum scroll value is 7 Hires pixels ?


$0000 => 0 HiRes pixels shift
...
$0077 => 7 HiRes pixels shift
$0088 => 0 HiRes pixels shift
...
$00FF => 7 HiRes pixels shift



I could not find the info in the HRM ?
Yragael is offline  
Old 28 September 2018, 03:07   #2
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 647
That's really odd. I'd expect the playfield shift in hires to work exactly the same as in lores, with both shifting up to 15 lores pixels and neither allowing for shifting in hires pixels (assuming you're using OCS, AGA changes a few things).

This seems to me to be what the HRM means here:
Quote:
Originally Posted by HRM
You can have up to 15 pixels of delay. In high resolution mode, scrolling is in increments of 2 pixels.
So, I'd expect a shift of $FF to have a 15 pixel lores delay for both playfields. No idea why that's not working...
roondar is offline  
Old 28 September 2018, 11:11   #3
ross
Sum, ergo Cogito

ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 48
Posts: 1,367
Yes, this is an OCS limit, soft scroll only in low-res increments.
AGA enhance this giving you more granularity (two more bits, the famous quarter pixels scroll).

But it is not a problem at all: ignore the upper bit, do a soft scroll and every 8 increments change the pointers
(not as soft as it could be but not so ugly).

Anyway the same happens also on AGA.
Try to raise resolution in 4x fetch mode and do a 64bits soft scroll: the high bits of BPLCON1 are ignored .
In shi-res you move 4 pixels at a time using the normal bits, fortunately they have added bits for 35ns delay steps
and therefore for the 64bits scroll you use exclusively [the new named] PFxH0-5.


Last edited by ross; 28 September 2018 at 11:22.
ross is offline  
Old 28 September 2018, 15:10   #4
Yragael
Registered User

 
Join Date: Jun 2017
Location: Paris
Posts: 43
Quote:
Originally Posted by ross View Post
Yes, this is an OCS limit, soft scroll only in low-res increments.
AGA enhance this giving you more granularity (two more bits, the famous quarter pixels scroll).

But it is not a problem at all: ignore the upper bit, do a soft scroll and every 8 increments change the pointers
(not as soft as it could be but not so ugly).
Would this not mean setting the bitplanes addresses to odd addresses?
Yragael is offline  
Old 28 September 2018, 15:50   #5
ross
Sum, ergo Cogito

ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 48
Posts: 1,367
Quote:
Originally Posted by Yragael View Post
Would this not mean setting the bitplanes addresses to odd addresses?
No, because after 8 shift you've exhausted all 16 pixels (you scroll by 2 at a time).
ross is offline  
Old 28 September 2018, 18:52   #6
fstarred
Registered User

fstarred's Avatar
 
Join Date: Mar 2018
Location: Rome
Posts: 98
I ve recently come across this issue about different lores and hires behaviour, so I ve made two simple example of h scrolling with blcon1

https://github.com/fstarred/amiga_pl...scroll_hires.s

https://github.com/fstarred/amiga_pl...scroll_lores.s

Basically as said by Ross, hires scroll by 2 pixels per value, so a value of $77 is the last useful byte if you want to scroll both even and odd bitplanes

Last edited by fstarred; 28 September 2018 at 19:00.
fstarred 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
Tutorial about zooming with BPLCON1 (102) : Looking for examples Yragael Coders. Tutorials 16 26 September 2018 22:36
Finegrain_cpu_speed values hexaae support.WinUAE 2 14 August 2016 15:36
Zooming using BPLCON1 (horiz. shift) — am I doing it wrong? losso Coders. Asm / Hardware 10 14 January 2014 18:00
WinUAE handling of ECS:BPLCON1:DOFF flag RedskullDC support.WinUAE 1 26 December 2007 18:12

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 19:27.


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