English Amiga Board


Go Back   English Amiga Board > Main > Amiga scene

 
 
Thread Tools
Old 17 August 2019, 16:26   #741
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 1,287
Quote:
Originally Posted by Retro1234 View Post
If that is true and the Megadrive screen is maximum of 512x512 and thats a big if! the screen probably wraps straight round without any tricks alot easier than on the Amiga.
https://segaretro.org/Sega_Mega_Drive/Planes
https://segaretro.org/Sega_Mega_Drive/Scrolling

Maximum square size is 512x512, you can scroll up to 1024 pixels (but only if the nametable/plane window is that big). If you want to scroll more than fits in a plane it's up to you as programmer to stream in the new tiles. Wrapping on Sega/Amiga is comparable. On one you reset the bitplane pointers, on the other you reset the plane scroll value. Both require you to set up new data if you want to see something new.

What I said is true. I'm not in this to lie, rather the opposite.
roondar is offline  
Old 17 August 2019, 16:31   #742
Retro1234
Boo

Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 4,348
Ok the screen probably wraps around horizontal and vertically no need to do anything else no need to move your sprites very simple to scroll endlessly.
Retro1234 is offline  
Old 17 August 2019, 16:46   #743
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 1,287
Quote:
Originally Posted by Retro1234 View Post
Ok the screen probably wraps around horizontal and vertically no need to do anything else no need to move your sprites very simple to scroll endlessly.
If you don't need more than about two square screens (less actually) of level. Otherwise the answer is still no as the MD does not 'magic' new tiles in place.

Updating bobs/sprites on a scrolling game in the Amiga is not hard. Sprites are independent of the screen so you don't need to know where the screen is and all you do for bobs is add a single static value to the destination address. This value is needed anyway so it's no big deal.
roondar is offline  
Old 17 August 2019, 16:58   #744
Retro1234
Boo

Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 4,348
it is a big deal, the endless scrolling will be a lot easier than the Amiga no corkscrew and all this and a lot easier for vertical scrolling plus I bet Sega developers got a sample of this code.
Retro1234 is offline  
Old 17 August 2019, 17:15   #745
Shatterhand
Warhasneverbeensomuchfun

Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 36
Posts: 3,341
The corkscrew thing on Amiga is something that always baffled me. Did they design it this way, or was it a limitation of the hardware? Why the bitmap shitfs 1 pixel when it wraps? If it didn't do that it would be a lot easier to do everything.
Shatterhand is offline  
Old 17 August 2019, 17:23   #746
Retro1234
Boo

Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 4,348
At a guess when Amiga Hardware scrolling was used and not just an ST port they used the method where you draw tiles in front and behind to create a clone of the screen then scroll again etc.
Retro1234 is offline  
Old 17 August 2019, 18:18   #747
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 1,287
Quote:
Originally Posted by Retro1234 View Post
it is a big deal, the endless scrolling will be a lot easier than the Amiga no corkscrew and all this and a lot easier for vertical scrolling plus I bet Sega developers got a sample of this code.
You need to move new data in on Sega consoles just as often as on the Amiga. The endless display does not mean you don't have the reset the scroll value or put new data in place. It's not that different.

Calling the requirement to add a single value to bob offsets a big deal genuinely baffles me.
Quote:
Originally Posted by Shatterhand
The corkscrew thing on Amiga is something that always baffled me. Did they design it this way, or was it a limitation of the hardware? Why the bitmap shitfs 1 pixel when it wraps? If it didn't do that it would be a lot easier to do everything.
It's a way to optimise memory use, no more. If you don't like it, you can create an infinite scroller much like the Megadrive does it: define a bitmap twice as wide as the screen is and draw new tiles on both edges as you scroll along. When you reach the edge, simply update the pointers and you'll be scrolling along again.


This is conceptually very similar to the MD, the only difference is that the MD uses a fine scroll register and the Amiga uses a fine scroll register plus bitplane pointers.
roondar is offline  
Old 17 August 2019, 18:39   #748
Galahad/FLT
Going nowhere

Galahad/FLT's Avatar
 
Join Date: Oct 2001
Location: United Kingdom
Age: 46
Posts: 7,309
Quote:
Originally Posted by Shatterhand View Post
The corkscrew thing on Amiga is something that always baffled me. Did they design it this way, or was it a limitation of the hardware? Why the bitmap shitfs 1 pixel when it wraps? If it didn't do that it would be a lot easier to do everything.
It shifts 1 pixel to go onto the next line down.

You're essentially scrolling through memory. To scroll horizontally after using the hardware scroll, you add 2 to the bitplane pointers, so at some point, the pointers will be at the next horizontal line to be displayed. Theres no internal hardware counter that resets back to the start of the line you're on.
Galahad/FLT is offline  
Old 17 August 2019, 19:10   #749
Retro1234
Boo

Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 4,348
512 isn't even enough for 2 whole horizontal screens, I'm sorry but your blind faith and having to defend everything about the Amiga with walls and walls of text I just dont belive you to be a reliable source.Sorry
Retro1234 is offline  
Old 17 August 2019, 19:25   #750
Retro1234
Boo

Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 4,348
and this is how console scrolling is done not like on the Amiga The End

https://wiki.nesdev.com/w/index.php/PPU_scrolling
Retro1234 is offline  
Old 17 August 2019, 19:25   #751
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 1,287
Quote:
Originally Posted by Retro1234 View Post
512 isn't even enough for 2 whole horizontal screens, I'm sorry but your blind faith and having to defend everything about the Amiga with walls and walls of text I just dont belive you to be a reliable source.Sorry
If you don't believe what the Sega Retro (Mega Drive) says, well... Sorry, but that's not my problem. If you had bothered to click the links I provided, you'd have known that 512x512 is (as I said) for a square only. For pure horizontal or vertical scrolling you can do 1024x256/256x1024 instead.

As for 'blind faith'... I've repeatedly and consistently agreed with actual flaws and problems with the A1200 and the Amiga in general. I changed my mind several times when presented with credible facts more than once. In fact, on this very page I've agreed that the A1200/Amiga was limited in sprite capabilities compared to the consoles at least twice. But sure, go on pretending I show 'blind faith'.

Frankly, I simply don't care if you think I'm reliable or not. It won't change the truth value of my claims, which are easy enough to check. I even provided you with my source.

Quote:
Originally Posted by Retro1234 View Post
and this is how console scrolling is done not like on the Amiga The End

https://wiki.nesdev.com/w/index.php/PPU_scrolling
I'll try to keep this brief.

That link shows something very similar in concept to the Amiga's corkscrew method. Seriously.
The main differences (apart from register use) is how you change the part of the window you show and how it's organised in memory. If you understand how to make that work, you'll understand how to make corkscrew work.

Last edited by roondar; 17 August 2019 at 19:35.
roondar is offline  
Old 17 August 2019, 19:31   #752
Retro1234
Boo

Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 4,348
That is basically the very similar to the corkscrew but not moving down one tile and I bet that works vertically on the Mega Drive as well.

again to be honest this is just crazy and I don't care.
Retro1234 is offline  
Old 17 August 2019, 19:34   #753
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 1,287
Quote:
Originally Posted by Retro1234 View Post
That is basically the very similar to the corkscrew but not moving down one tile and I bet that works vertically on the Mega Drive as well.

again to be honest this is just crazy and I don't care.
Then what's the problem? Seriously, you're banging on and on about how console scrolling is so much easier and then you turn around and say 'actually, it isn't all that different'. Do note that I never said that scrolling is hard to do on consoles, just that it is similar in concept and that some of the same challenges still apply. I also already said like five times that it is indeed harder to do on the Amiga, just not 'hard'.

I seriously don't get the problem here

Last edited by roondar; 17 August 2019 at 19:48. Reason: Hopefully this is clear yet short.
roondar is offline  
Old 17 August 2019, 19:50   #754
NorthWay
Registered User
 
Join Date: May 2013
Location: Grimstad / Norway
Posts: 608
Quote:
Originally Posted by Shatterhand View Post
The corkscrew thing on Amiga is something that always baffled me. Did they design it this way, or was it a limitation of the hardware?
I don't think the designers thought it properly through.
Or rather, I'm guessing they expected you to brute-force stuff with the blitter for screen updates. Remember how the design goal was for 15fps cartoon like.

And the thing is, they were half-way there: The modulo registers and ddfstop could have been duplicated so you got a new ddfwrap register where the new wrap0 and wrap1 registers were added to the bitplane pointers. Just doing exactly the same thing the modulo does already.

But hey, you can at least use the copper to do it yourself with AGA!
NorthWay is offline  
Old 17 August 2019, 19:52   #755
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 1,287
Quote:
Originally Posted by NorthWay View Post
Or rather, I'm guessing they expected you to brute-force stuff with the blitter for screen updates. Remember how the design goal was for 15fps cartoon like.
I think they expected you to use the 'double screen with window' method. At least, that is what reading the HRM implies to me.
Quote:
But hey, you can at least use the copper to do it yourself with AGA!
If you don't mind running in 3BPL you should be able do it under OCS as well using Dual Playfield, a sprite, the Blitter and a bit of finagling. But that, yeah that is complicated and good luck getting it right the first time.

Last edited by roondar; 17 August 2019 at 20:08.
roondar is offline  
Old 17 August 2019, 22:47   #756
Shatterhand
Warhasneverbeensomuchfun

Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 36
Posts: 3,341
Quote:
'double screen with window' method
What method is this?

Is it having a 2 screens large bitmap for the scrolling playfield and when you reach its edge you copy that half of the bitmap to the other half and move it back to the beginning? (EDIT: Now I read the thread more properly and saw what you're talking about, sorry!)

Looking at Blitz Basic documentation it looks like that's how they want to me to do scrolling, but not only it wastes a lot of memory, I really don't think copying a whole screen would be fast enough.

I *did* manage to achive proper horizontal scroll on Amiga with Blitz though, thanks to help from this very forum and the called corkscrew technique:

[ Show youtube player ]

I just never did anything with that engine, heh. Maybe someday I'll go back to it and do a "KUNG-FU MASTER INSIDE CAVES" game or something

But no need to use 2 windows, I just have 2 vertical columns more than the total screen width and blit the tiles as the screen moves. It was pretty fast considering the game would never scroll faster than what's shown in the video


Quote:
It shifts 1 pixel to go onto the next line down.
You're essentially scrolling through memory. To scroll horizontally after using the hardware scroll, you add 2 to the bitplane pointers, so at some point, the pointers will be at the next horizontal line to be displayed. Theres no internal hardware counter that resets back to the start of the line you're on.
Thank you for your explanation. I am actually amazed I understood what you said, though I had to read it twice. Not that you didn't make it clear, its just that I obviously have some difficulty understanding how hardware works sometimes
Shatterhand is offline  
Old 17 August 2019, 23:00   #757
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 1,287
Quote:
Originally Posted by Shatterhand View Post
What method is this?

Is it having a 2 screens large bitmap for the scrolling playfield and when you reach its edge you copy that half of the bitmap to the other half and move it back to the beginning? (EDIT: Now I read the thread more properly and saw what you're talking about, sorry!)

Looking at Blitz Basic documentation it looks like that's how they want to me to do scrolling, but not only it wastes a lot of memory, I really don't think copying a whole screen would be fast enough.
No, don't ever copy a whole screen in one go - that's very slow. What you do there is have a bitmap twice as wide as the visible screen and draw new tiles at both sides of the visible part of the screen (i.e. the window) as you scroll through the world. Then you simply point the window back to the start when you reach the end.

But yeah, it does use a lot of memory compared to corkscrew. It was used in plenty of games though as it's a bit easier to intuitively understand how the bitmap is layed out in memory (ironically actually programming both is fairly similar if done in Assembly). An example game that uses this method is Menace (it even had that whole tutorial plus source code in Amiga Format).

Quote:
I *did* manage to achive proper horizontal scroll on Amiga with Blitz though, thanks to help from this very forum and the called corkscrew technique:

[ Show youtube player ]

I just never did anything with that engine, heh. Maybe someday I'll go back to it and do a "KUNG-FU MASTER INSIDE CAVES" game or something

But no need to use 2 windows, I just have 2 vertical columns more than the total screen width and blit the tiles as the screen moves. It was pretty fast considering the game would never scroll faster than what's shown in the video
I know all about corkscrew scrolling, I was merely pointing out you could do it in a different way if you didn't like using it
roondar is offline  
Old 17 August 2019, 23:18   #758
Gilbert
Registered User
 
Join Date: Sep 2008
Location: UK
Posts: 49
Quote:
Originally Posted by roondar View Post
No, I'm trying to point out that your generalisation about what was and was not possible or seen on the machine is an exaggeration. That is all.
I said the A1200 was comparable to a Megadrive in power and by that I meant 2D power and I still stand by that. In terms of 3D games, I'm sure it would outshine the MD. But the problem is maybe the 3D games would look twice as good as those on the A500 and move twice as fast - but that's still not good enough to wow people into buying it. IMO It needed to be a lot better than the MD in terms of 2D power to be successful. That's what was selling back then - 2D games

Quote:
Originally Posted by roondar View Post
Most objects in Mega Typhoon are actually bobs. Only the player and it's shots are sprites. And thanks to the Amiga sprite HW, it is indeed really easy to multiplex sprites in the way done here as multiplexing is directly supported by the hardware (meaning you don't even need special tricks to do simple multiplexing of sprites).
Thats fair enough but why only Mega Typhoon manages this? That makes no sense for me if it's easy to achieve a lot of objects on screen while scrolling on the Amiga. And also Mega Typhoon came out in 1996. That is seriously late in the A500's lifespan. Over 10 years after the Amiga's birth!

Quote:
Originally Posted by roondar View Post
As for programming sprites on the Amiga, they're actually easier to use than bobs. Again, I'm not trying to say the Amiga is generally better at pushing sprites. I'm saying the notion you have to resort to complicated tricks and optimising every cycle to get a reasonable number of objects on screen is wrong (though this will, naturally, depend on what you find a reasonable number).
But that wasn't the reason they didn't use them - it was the idea of mixing bobs and sprites. Just an extra complication for developers. So many games didn't even take advantage of dual playfield mode because the developers hadn't used it before or didn't want to introduce an extra complication.

Quote:
Originally Posted by Retro1234 View Post
If that is true and the Megadrive screen is maximum of 512x512 and thats a big if! the screen probably wraps straight round without any tricks alot easier than on the Amiga.
Yes this guy is right - I googled - it wraps straight round so all you need is to 'draw' new strips of tiles, which are just references to graphics blocks on the MD. Very fast and easy

I thought SOTB beast 1 looked way better than the other 2 in every way. No one looked at SOTB 3 and thought I have to have that game. The first one was like 13 levels of parallax and claimed ot have over 100 colours on screen and actually looked like it did.


Quote:
Originally Posted by roondar View Post
Yes it is.

You made two claims regarding multi-directional scrolling. The first was that it took years to be developed and the second was that it was really complicated to do.
Dave Jones method uses a lot more memory and blitter time and was made obsolete by the new version. He wouldn't have done it like that if he knew the better version. (esp since Menace had to fit in 512k). Also I'm not sure how to expand his horizontal hardware scroll method into a 8-directional one. Is it even possible?

Also I am talking about 8-directional hardware scrolling over a large map. I don't remember all these games that did that before Exile. Games like Kick Off - sure.

I read Andrew Braybrook when developing Fire and Ice (a more recent Amiga game) and he said he asked the Turrican programmers for advice on how to do his scrolling (not sure if it was hardware or software) because he couldn't get it fast enough. He said he couldn't have done it without their advice. It doesn't sound that easy to me and he had a strong C64 background

I just feel you are ignoring the history, pre-internet. I read so many Amiga magazines and so many programmers say "We are not using sprites in this game because we don't have time or we haven't used them before" or "This is our 4th game now and this is the first time we are using hardware scrolling. It was really tough to get it working but after ____ months it was worth it"

OK yes sorry I missed those restore steps - but say you have 20 BOBs - thats 20 screen areas you have to remove and restore. All extra time and the Blitter steals memory cycles from the CPU also. The Amiga blitter although good for it's time is not lightning fast compared to just overlaying a sprite on screen

Yes you are prob half right about the reasons for 25Hz although I feel also many Amiga games used it to make their games look better in screenshots - that's still going on today on new consoles. I'm thinking of Xenon 2 and all those parallax layers. Not sure if they used the blitter but even if they did that still wouldn't have worked in a single frame.

Maybe the MD could have taken advantage of a lower frame rate too? I don't know the tech details but given it has 3D games like Archer Macleans Snooker released for it - it must be able to draw somehow to bitmaps or tiles.

Quote:
Originally Posted by roondar View Post
I pointed out that there are a whole bunch of 50Hz games on the Amiga that do this and proceeded to give three examples that show the system is actually surprisingly capable when you do put in more effort. That I only gave three examples does not mean they're the only ones. The fact there are a fairly large number of these games about rather proves that it's clearly not as hard as some think.
Well I had an A500 at the time and now own a CD32 and my experience is and was that most games arent full screen and when they are full screen at 50hz, the screen is usually pretty empty or there were certain obvious compromises made in their design. The MD made games like Strider and Ghouls n Ghosts (even on a low capacity cart) run great out of the box. All Team 17 games on Amiga are full screen but they were the exception at the time. One of my favourite games on Amiga is Gods which runs at only 17fps. I don't like MD version because it doesn't look as good but it does runs at 50fps.

I think the greatest test would be if the Amiga had an arcade conversion that runs full screen at 50fps. Because then it's not a game that makes compromises in it's design just so it runs smoothly on the Amiga. Can you think of any?
Gilbert is offline  
Old 17 August 2019, 23:42   #759
Shatterhand
Warhasneverbeensomuchfun

Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 36
Posts: 3,341
Quote:
I think the greatest test would be if the Amiga had an arcade conversion that runs full screen at 50fps. Because then it's not a game that makes compromises in it's design just so it runs smoothly on the Amiga. Can you think of any?
Hmm.. R-Type? Rodland? Pang? Indy Heat? Rainbow Islands? Pacmania? Ghosts 'n' Goblins? Commando?


I am not sure if Toki or Silkworm runs at 50 fps. I have the feeling Mortal Kombat also does, everytime I play that on my A600 I am surprised on how smooth it feels.
Shatterhand is offline  
Old 17 August 2019, 23:45   #760
Shatterhand
Warhasneverbeensomuchfun

Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 36
Posts: 3,341
not only that, but some arcade ports were butchered because the were lousy ST Ports... and many times even as ST games they sucked.

No one will convince me we couldn't have a proper Ghouls 'n' Ghosts, Black Tiger, Mega Twins or Wonderboy in Monsterland on Amiga. Some of those games got GREAT versions on hardware that was clearly inferior to the Amiga.
Shatterhand 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
A1200 RF module removal pics + A1200 chips overview eXeler0 Hardware pics 2 08 March 2017 00:09
Sale - 2 auctions: A1200 mobo + flickerfixer & A1200 tower case w/ kit blakespot MarketPlace 0 27 August 2015 18:50
For Sale - A1200/A1000/IndiAGA MkII/A1200 Trapdoor Ram & Other Goodies! fitzsteve MarketPlace 1 11 December 2012 10:32
Trading A1200 030 acc and A1200 indivision for Amiga stuff 8bitbubsy MarketPlace 17 14 December 2009 21:50
Trade Mac g3 300/400 or A1200 for an A1200 accellerator BiL0 MarketPlace 0 07 June 2006 17:41

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


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.
Page generated in 0.11484 seconds with 16 queries