Amiga Tech - Copper Chunky
19:37
3 жыл бұрын
Amiga Tech - Audio Mixing for Games
12:08
Amiga Tech - Free Form Sprite Layer
7:52
Stellaris: 8-bit robots (Episode 2 of 2)
1:07:05
Let's play Suikoden (part 6 of 6)
43:42
Channel Update for June 2018
6:32
5 жыл бұрын
Stellaris: 8-bit robots (Episode 1 of 2)
1:01:20
Let's play Suikoden (part 5 of 6)
32:50
Let's play Suikoden (part 4 of 6)
45:15
Let's play Suikoden (part 3 of 6)
32:32
Пікірлер
@thewelder3538
@thewelder3538 22 күн бұрын
How big are your bobs? 19 seems REALLY low. I had 30 in my demo, but I don't use something as slow as a cookie cut.
@DutchRetroGuy
@DutchRetroGuy 22 күн бұрын
Cookiecut is usually needed for bobs in games, which is why I used it. The bobs are 32x32 on a six bitplane screen. I suspect the difference in speed is probably due to not needing cookiecut in your demo. If you can get away with just doing copy blits, you get a lot more bobs on screen.
@musicaldude9429
@musicaldude9429 Ай бұрын
copper chunky - sliver light
@Kavlor1
@Kavlor1 Ай бұрын
I don't know how I missed this as I was always looking out for AGA versions as I diagnally upgraded from the Atari STE to the A1200.
@DutchRetroGuy
@DutchRetroGuy Ай бұрын
To be fair, it was released around 2015 IIRC, so I can understand missing it 😉
@salihbaserofficial
@salihbaserofficial Ай бұрын
Can anybody help me.I'm looking PP hammer tilemaps
@Ray.Norrish
@Ray.Norrish Ай бұрын
It would have been great if more effort was made in this area for games other than what Rainbow arts were doing. Working with Psygnosis back in the day, this was never on the table due to musicians just submitting music in isolation. Pity, though as in the end, I was working directly with the devs on the unreleased game "SuperHero" to do more with mixed sfx/music. Too little - too late :(
@DutchRetroGuy
@DutchRetroGuy Ай бұрын
Yeah, sadly this kind of thing was not commonly done back in the day. I can’t change the past, but some Amiga games released over the last year or two have actually used my mixing routines.
@Miesiu
@Miesiu 3 ай бұрын
What about Blitter & spites in Amiga 1200? Was the same chips like in Amiga 500 or with more possibilities ? What about clock ?
@DutchRetroGuy
@DutchRetroGuy 3 ай бұрын
The Blitter in the A1200 is the same as the one in the A500. However, due to the AGA chipset being more efficient at displaying the screen, it still gets more cycles per frame and thus appears to be faster. AGA Sprites are improved over their A500 counterparts. Where the A500 was limited to Sprites that were 16 pixels wide, the A1200 could display Sprites at up to 64 pixels wide each. The A1200 also can choose which 16 colour bank(s) of colours to use for Sprites, meaning that in 32-128 colours the Sprites can have separate colours from the main screen, unlike the A500 where this was only possible if the screen used 16 or fewer colours. The Chipset still runs at 3.5MHz, though both the CPU, bitplanes and Sprites can now access memory in more than 16 bit chunks.
@Miesiu
@Miesiu 3 ай бұрын
@@DutchRetroGuy THX for quick answer with good explain.
@ricardomarino3763
@ricardomarino3763 3 ай бұрын
What is the key to bring up the map?
@DutchRetroGuy
@DutchRetroGuy 3 ай бұрын
You can bring up the map by pressing the tab key.
@youuuuuuuuuuutube
@youuuuuuuuuuutube 4 ай бұрын
Excellent stuff!
@DutchRetroGuy
@DutchRetroGuy 4 ай бұрын
Thanks!
@Asphodellife
@Asphodellife 5 ай бұрын
I really hope now with cartridges being bigger, the C64 RGCD competition will allow for bigger games instead of needing to be within 16kb limit. The last competition is already a few years back though, wonder if it will return.
@DutchRetroGuy
@DutchRetroGuy 5 ай бұрын
Yeah, it’s a shame it seems to have stopped. RGCD’s annual cartridge release was a great C64 tradition 🙂
@ecernosoft3096
@ecernosoft3096 5 ай бұрын
Rest in peace. And dude, you’re awesome.
@DutchRetroGuy
@DutchRetroGuy 5 ай бұрын
Thanks :)
@ecernosoft3096
@ecernosoft3096 5 ай бұрын
@@DutchRetroGuy I’m a former Atari programmer who still does Atari programming for other’s games and as a for-fun thing wanted to learn how to code on Amiga, any reccomendations for 68000 compilers?
@DutchRetroGuy
@DutchRetroGuy 5 ай бұрын
@@ecernosoft3096 that depends a bit on the language. For C/C++ there's either VBCC, Bebbo's GCC and Bartman's GCC (the latter two are more optimised than the first, but may have some limitations). For assembly, I personally use vasm & vlink, but I've heard great things about the Amiga Assembly extension for Visual Studio Code as well.
@ecernosoft3096
@ecernosoft3096 23 күн бұрын
@@DutchRetroGuy I ended up finding stuff myself. Do you have a discord server?
@DutchRetroGuy
@DutchRetroGuy 23 күн бұрын
@@ecernosoft3096 no, I do not have a Discord server at this time. But you can find me over on the Amiga Game Dev Discord, as well as several other Amiga related Discord servers.
@ecernosoft3096
@ecernosoft3096 5 ай бұрын
I wanted to add a few notes. Specifically about AGA- 1. The blitter is twice as fast. 2. There is half as much bitmap DMA (DMA used to render the bitmap) 3. Sprites can be up to 64 pixels wide 4. Dual layer mode has each layer at 16 colors. Overall, great video!
@DutchRetroGuy
@DutchRetroGuy 5 ай бұрын
Thanks for the compliment. However, the Blitter on AGA is not any faster than the Blitter on OCS, it merely appears faster due to the ability of AGA to lower the bitplane DMA. Speaking of bitplane DMA, that can be lowered to 1/4th, not 1/2. The rest is all accurate (I've actually used 64 pixel wide Sprites in one of my examples before as a workaround for AGA not having the 7-bitplane trick).
@ecernosoft3096
@ecernosoft3096 5 ай бұрын
@@DutchRetroGuy Wait, does the blitter only use 3.58 mhz DMA and *not* 7.16 mhz? Sounds rather stupid to me. And when I say faster I mean the clock speed, not the pixels per cycle. From what I know, you get 104,000 cycles per frame on a 1200 blitter with 8 bitplanes vs just 40,000 on ECS/OCS.
@DutchRetroGuy
@DutchRetroGuy 5 ай бұрын
@@ecernosoft3096 sadly, the Blitter in the Amiga (and indeed the whole custom chip set) always runs at ~3.5MHz. There are about 71050 DMA/Chip RAM cycles available per frame for the custom chips to use on all PAL Amiga's, from the A1000 all the way to the A4000. The differences in speed are due to the amount of cycles used by bitplane DMA and the CPU bus width. On OCS, the CPU has 16 bit access to Chip RAM, on AGA (and the A3000) it has 32 bit access to Chip RAM. However, the Blitter itself only ever uses 16 bits. Bitplane DMA on OCS access is 16 bit, one word per cycle. On AGA however, Bitplane DMA access can be either one, two or four words per cycle (contrary to how Commodore presented it, AGA is actually still a 16 bit chipset. Like the A3000, it has a 'hack' to allow the CPU 32 bit access to Chip RAM, but the custom chips all work in 16 bits still - so the 64 bit wide Sprites & bitplane fetch of AGA internally is 4x16 bits presented as 1x64 bits). It should be noted however, that running AGA in it's 4x bitplane DMA fetch mode does give the Blitter many more cycles during bitplane DMA, which is perceived as an increase in Blitter speed. However, in reality, if you disable all bitplanes and other non/Blitter DMA, the Blitter will always top out at the same speed, regardless of whether you're using an A1000 or A4000. AGA was messy and therefore a bit complicated to explain ;)
@ecernosoft3096
@ecernosoft3096 5 ай бұрын
@@DutchRetroGuy *comprehends* Seriously, even in AGA it doesn’t run in 7.16 mhz? They have 14.32 mhz RAM in the A1200. Sounds pretty darn logical to me. What I was at least originally thinking was rhat since the Amiga AGA chip RAM runs at 14.32 mhz because the 68020 (an actual 32 bit CPU mind you) there also runs at 14.32 mhz. This would mean that if you divide it by 2 you would get 7.16 mhz. This, is what I thought was what the blitter and Agnus ran at. Yea, you can fetch 32 bits per cycle with Agnus sure, taking only 16000 cycles of DMA (80x200=16000, I’m from NTSC land) or 20480 cycles in PAL. In a 7.16 mhz frame you get 120,000 cycles so the blitter (in my head) got 104,000 cycles minus Paula. This literally seems logical, you have 14.32 mhz RAM after all. Yes, the blitter is still 16 bit and not 32 bit (another missed opportunity) but you’d think this would be the case right? Of course, adding sprites in you get some extra DMA cycles. 64 pixel wide sprites take up 16 bytes of memory- this would be 4 32 bit read cycles so it would take 112 cycles per line instead of 80 for all 8 sprites. If the blitter here runs at 7.16 mhz then during the frame it would actually run at 5.37 mhz (7.16 - 1.79) and during VBLANK it would run at 7.16 mhz, again, minus Paula cycles because Paula exists.
@DutchRetroGuy
@DutchRetroGuy 5 ай бұрын
​@@ecernosoft3096 yeah seriously, the Amiga Chip set always runs at ~3.5MHz. Yes, this is not logical and yes, this does mean that AGA's performance gain is much less large than it should've been, but sadly it is the case. It is also one of the reasons why the CPU has such terrible bandwidth to Chip RAM, despite having 32 bit access. Commodore put very little R&D effort into AGA, the engineers were only allowed to upgrade one of the three chips, as management really wanted AAA instead (they chose to upgrade Denise to a full 8-bitplane chip, now called Lisa). The rest of the custom chips were only changed in so far as was needed to support the new features of Lisa.
@ecernosoft3096
@ecernosoft3096 5 ай бұрын
You got mail! …. I just subscribed to your channel!
@DutchRetroGuy
@DutchRetroGuy 5 ай бұрын
Thanks, as you see I don't upload that often - but there will be more videos. Eventually ;)
@ecernosoft3096
@ecernosoft3096 5 ай бұрын
@@DutchRetroGuy Haha! Neither do I. I've been busy though- that's why. ... on my first Amiga program!
@DutchRetroGuy
@DutchRetroGuy 5 ай бұрын
@@ecernosoft3096 great stuff, hope you're enjoying it :)
@Asphodellife
@Asphodellife 6 ай бұрын
Would it, in theory, be possible where one has a fast enough 'Bob engine' so games can be 50fps rivalling sprite only games (consoles) with all the advantages bobs have over (Amiga) sprites like size for example?
@DutchRetroGuy
@DutchRetroGuy 6 ай бұрын
That depends. Console Sprites are more difficult to quantify than you might think, for instance the Mega Drive can display up to 80 Sprites (each up to 32x32 pixels). But the number of Sprites is static, meaning that the Mega Drive can display 80 Sprites, but that holds even if the game in question requires the Sprites to be 8x8 pixels rather than the maximum of 32x32. Consoles usually also have limits to the number of Sprites per scanline, which can make quantifying things even more messy. The Amiga Blitter is more flexible in that it doesn’t really matter what size a BOB is, as long as there are enough cycles available in a frame for the Blitter to draw it. The upshot is that the Blitter can likely outperform some of the 16 bit consoles if the objects displayed are very small, but it’ll definitely not manage if the objects displayed are closer to the consoles maximum Sprite sizes. If all you care about is number of objects and their size, you could choose to run your Amiga BOB engine in a very low colour mode (for example, 2 or maybe 4 colours on screen). If you do that, you can get a very large amount of objects on screen even with just the Amiga Blitter. However, if what you really want is a game that looks similar to the average 16 bit console game and has similar numbers of BOBs as such games has Sprites, you’ll almost certainly find that the Amiga won’t be able to match it. Then again, the Amiga is older than the 16 bit consoles as well, so this isn’t really that surprising.
@Asphodellife
@Asphodellife 6 ай бұрын
Thanks for the great explanation. I always wondered, with the Amiga only having 8 sprites (without multiplexing), if there could be some fast bob engine instead, as the idea of blitter objects is rather unique to the machine I believe @@DutchRetroGuy
@DutchRetroGuy
@DutchRetroGuy 6 ай бұрын
@@Asphodellife there were some other machines with a Blitter (notably the Atari STE, which can get impressive results when coded for properly). But it was a fairly rare thing in computers at the time. When the Amiga launched, I think (though I may be wrong here!) there was only one other consumer oriented system that a Blitter onboard and that was the extremely rare Mindset computer. I'm not entirely certain if the Blitter in that system was as capable, more capable or less capable than the Amiga one, though. Some later VGA/SVGA cards also came with Blitters, though the Blitter that they came with tended to offer only a subset of what the Amiga Blitter could do.
@BaddeJimme
@BaddeJimme 2 ай бұрын
There are two main reasons these bobs are fast: - Drawing bobs with transparency on the Amiga takes twice as long as simply copying a rectangular bob. So these bobs are simply copied without using transparency. The downside is that the ostensibly transparent parts of the bob will overwrite anything behind them with background color, so it only works when we draw onto a blank background. - Normally, before drawing any bobs, we would first clean up any bobs that were previously drawn onto that buffer. However, if we know that we will completely overwrite the old bobs, we can skip this. However if two bobs partially overlap, one must be drawn using transparency and therefore cannot reliably overwrite itself. This gives us two significant restrictions. The first is that our bobs are only fast when they do not overlap, which is acceptable for some genres but not others. The second is that we must draw onto a blank background, which means our game might not be as pretty as if we used transparent bobs. So yes, you might be able to do it, but not necessarily.
@ArneChristianRosenfeldt
@ArneChristianRosenfeldt 6 ай бұрын
4:28 not really a unique feature if Atari 8 bit already had it . The real idea of copper is to reestablish the race with the beam while we use a 68k as CPU which really does not feel like it wants to race.
@DutchRetroGuy
@DutchRetroGuy 6 ай бұрын
I was unaware that the Atari 8 bit systems also allowed for horizontal Sprite multiplexing. Interesting, thanks for the info.
@ArneChristianRosenfeldt
@ArneChristianRosenfeldt 6 ай бұрын
I am not an expert, just read that "Space Invaders" used this. Maybe this was actual like mode-7 where the background became the foreground? Texas Instruments made this easy to use chips. The "Product Owner" probably thought: "Why would the sprites be vertically aligned?". Even the interrupt on C64 cannot address x positions. Commodore did not want coders to write CPU loops to count cycles. So no repeated sprites. The official solution would need too much registers (cost of documentation). So, commodore omitted this one link which lets the sprite data rotate (instead of shift) on the Amiga. Now if there only was better documentation of die shots of GTIA where we could see this connection. Rotation registers should MHO appear as a left shifting register atop a right shifting register. It is actually pretty weird that pcEngine with its 16 sprites and single playfield cannot repeat sprites! Some patent? Or can it? @@DutchRetroGuy
@DutchRetroGuy
@DutchRetroGuy 6 ай бұрын
@@ArneChristianRosenfeldt as far as I know the PC-Engine can’t repeat Sprites, but I could, of course, be wrong.
@ArneChristianRosenfeldt
@ArneChristianRosenfeldt 6 ай бұрын
No I think that you are right. PCengine is based on NES is based on Texas Instrument chips. That lineage never adapted this. Amiga is best!@@DutchRetroGuy
@random_precision_software
@random_precision_software 6 ай бұрын
Is that python on the Amiga?
@DutchRetroGuy
@DutchRetroGuy 6 ай бұрын
No, I cross develop using my PC, so that is PyCharm on Windows 10. Technically there is nothing stopping you from running this on Amiga tough, assuming Python 3 and the modules I use are available on it.
@random_precision_software
@random_precision_software 6 ай бұрын
@@DutchRetroGuy I don't know python I use C# now and C 30 years ago.. Borland Turbo C it was lol. Pity I can't use C# on the Amiga?
@DutchRetroGuy
@DutchRetroGuy 6 ай бұрын
@@random_precision_software I don't think there's C# for the Amiga, though I could be wrong.
@ecernosoft3096
@ecernosoft3096 7 ай бұрын
You say Commodore but this is in fact just branding. The Amiga was made by *Ex* Atari employees.
@bronwaith
@bronwaith 7 ай бұрын
Not true
@ecernosoft3096
@ecernosoft3096 7 ай бұрын
@@bronwaith It is true. Ex Atari employees left and founded a company named Amiga. Then, Commodore, unable to make a 16 bit system, bought Amiga, meaning Atari made it.
@DutchRetroGuy
@DutchRetroGuy 6 ай бұрын
@@ecernosoft3096 The keyword here being "Ex". They were not working for Atari at the time, meaning Atari had nothing to do with it. Your argument is like saying that anything Atari created after Jack Tramiel took over Atari was actually made by Commodore because Jack Tramiel used to work at Commodore.
@ecernosoft3096
@ecernosoft3096 6 ай бұрын
Ok, before you all spam me with “no it’s commodore” or “ex Atari employees” I fixed it.
@ecernosoft3096
@ecernosoft3096 6 ай бұрын
@@DutchRetroGuy fixed.
@danyoutube7491
@danyoutube7491 8 ай бұрын
This was one of our favourite games on the Amiga. Obviously a good game in all aspects, and having seen the film Tremors on TV not many months or years before, the phenomenon of giant sand worms was very appealing! I had no knowledge of the Dune universe before this game.
@DutchRetroGuy
@DutchRetroGuy 8 ай бұрын
Yeah, it's great game. It does really benefit from being run on at least an A1200 though, it gets quite sluggish on the A500. Though perhaps that's not all bad - gives you more time to react :)
@danyoutube7491
@danyoutube7491 8 ай бұрын
Good review! Regretfully I never played Rodland as a child, I had seen mention of it in 'best game of the year' lists and so on in magazines, but it came out before we got our A500 for Xmas 1991 and the cutesy aesthetic I saw in screenshots put me off. That's a shame, because I missed out! I started playing it a year or so back when I got into Amiga emulation on my PC, and it is one of the best Amiga games I've ever played. The gameplay is simple yet fun, and not at all derivative from other games (at least none that I am aware of), and the graphics and sound are very nice. As the review says, it is a very good conversion of a great arcade game, perhaps as good as it could be on the Amiga. This is the standard that arcade ports should have aimed for on the Amiga.
@DutchRetroGuy
@DutchRetroGuy 8 ай бұрын
Thanks! It's one of my favourite Amiga games from back in the day and I felt it deserved a nice review :)
@harritikkanen6491
@harritikkanen6491 8 ай бұрын
Pretty sure that on Amiga 500 you could get a speed-up if CPU was used for simpler things such as clearing/restoring background. I.e. when you are restoring the previous blits off the background you can use blitter and CPU together to gain some performance.
@DutchRetroGuy
@DutchRetroGuy 8 ай бұрын
On A500 clearing with the CPU and Blitter together is indeed quite a bit faster, but copy operations (i.e. restoring the background) are always slower than the Blitter if the CPU is also involved. This is due to the fact the CPU has overhead in reading the instructions (and reading/decoding additional word(s) for the address to use), which the Blitter does not have. Since both the CPU and the Blitter access memory 16 bits at a time and the CPU can’t use all DMA slots while the Blitter can.
@harritikkanen6491
@harritikkanen6491 8 ай бұрын
Thanks for the info, I appreciate it. It's been so many years since I coded on A500, so it's quite possible the speed up was for clearing only.@@DutchRetroGuy
@MozzerV12
@MozzerV12 10 ай бұрын
I enjoyed this series so far, I never got very far in this game myself back when I was a kid - I remember the spiders being very difficult enemies. I know its only been 4 years and don't want to rush you, but when is part 8 coming out?
@DutchRetroGuy
@DutchRetroGuy 10 ай бұрын
It’s a fair question. Honestly, I don’t know. If you’ve looked at my videos you’ll probably have noted that my upload schedule has changed pretty drastically over the years. There’s also the inescapable fact that there’s far less viewers for my gaming content than my programming content. I may or may not be doing more episodes of this and Dune 2. I can’t guarantee anything.
@MozzerV12
@MozzerV12 10 ай бұрын
Oh well it was fun to watch anyway, and a shame that these aren’t more popular but I guess that’s what happens to a lot of older games and systems, the audience fades. Thanks for uploading these.
@arthurdaly3497
@arthurdaly3497 10 ай бұрын
Just wow. I knew all of this was probably possible and did a few bits of programming to investigate it back in the day, but you just went and did the whole thing. I blame my ADHD. I was like "yeah I know I can do that already, so I can't be bothered finishing it". I never even heard the term copper chunky pixel mode used by anyone else before this video, I thought it was something I'd come up with 🤣which noone else would ever know about
@DutchRetroGuy
@DutchRetroGuy 10 ай бұрын
Figuring out these kind of techniques on your own is one of the great things about the old platforms. Great stuff that you made something like this yourself back in the day. As for not finishing, you should see my AmigaDev directory on my PC - so many unfinished or half baked ideas 😆
@arthurdaly3497
@arthurdaly3497 10 ай бұрын
So weird. I was just re-remembering about this possibility. Well actually I first thought about this possibility back in about 1987, after I wrote an assembler loop where I could see that I could change the colout pallete after about every 4 pixels horizontally
@DutchRetroGuy
@DutchRetroGuy 10 ай бұрын
I think I first heard of the term when I saw the readme for one of the 3D Copper demo’s I saw back around 2000. It’s an interesting effect for sure.
@naviamiga
@naviamiga 10 ай бұрын
Nice, very detailed.
@tomaszjedrusiak
@tomaszjedrusiak 11 ай бұрын
I remember awe I got to see this game first time...
@DutchRetroGuy
@DutchRetroGuy 11 ай бұрын
Yeah, it is a great game! I still remember reading the manual cover to cover multiple times before getting it home - I bought the game on holiday and had to wait a week to play it. Was hard to wait so long, but it was so worth it 🙂
@happycactusgames8239
@happycactusgames8239 Жыл бұрын
Fantastic Dizzy used a different way to create a 16 colour background from hardware sprites, the AGA version took it a step further... kzbin.info/www/bejne/o4jTn3WXpdqae7M
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
True and an interesting approach for sure :) Risky Woods used the same idea for a 16 colour Sprite based background. Both it and Fantastic Dizzy are limited to a 64 pixel wide pattern, but that can still certainly look nice. Works well if you don't need many moving objects on screen as it does use a lot of Copper display time on OCS. AGA is a bit different, the 16 colour hardware sprite background is a chipset feature there, you can just set a single register and Sprites will repeat themselves horizontally after 256 pixels, which combined with 64 pixel wide Sprites under AGA lets you create a nice colourful repeating background layer for AGA games.
@happycactusgames8239
@happycactusgames8239 Жыл бұрын
@@DutchRetroGuy I can't remember if I used the copper to write directly to the sprdat registers to 'draw' the image, I do remember trying that method though. I'd have to look at the copperlist to see what I did.
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
@@happycactusgames8239 interesting, you mean using "manual mode" sprites only? Or are you refering to something closer to the free-form sprite layer video I did a while back? Good stuff in either case, (ab)using the Copper for effects is certainly one of the nicer things about the Amiga :)
@happycactusgames8239
@happycactusgames8239 Жыл бұрын
@@DutchRetroGuy I just watched your other video, yes, I remember updating the sprite data registers directly to render in different images to hardware sprites using the copper, but for Dizzy, it looks like I just reused the same data (so a 64 wide 16 colour image repeated) - it was probably just stealing too much dma time otherwise, as the main game was 32 colours (5 bitplanes) - I played around with a number of different ideas to get this ported from the sega genesis to the amiga without having to rework the graphics too much (the genesis had 4 palettes of 16 colours to play with!) - I loved abusing the amiga hardware...
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
@@happycactusgames8239 cool stuff, thanks for elaborating. Love to hear how the old games were made :)
@AA-vf3eu
@AA-vf3eu Жыл бұрын
Hardware sprites can acrually use 16 colours. You just need to work on different bitplanes with blitter so colours 16-23 are a copy of 0-7 and 8-15 are mirrored into 24-31. We can use copper colour magic on background then.
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
As far as I can see, I'm limited in what bitplanes I can use because I use the Amiga's hardware scrolling with different values for playfield 1 and playfield 2. This splits the display up into bitplanes 1,3,5 and 2,4. I can currently choose either bitplane 2 or bitplane 4 for the Blitter bitplane, so it's either all colours that are multiples of 2 or 8 which get doubled. I can't easily use bitplanes 1, 3 or 5 because doing so would require using the Blitter to correct at least two bitplanes rather than just one, which would make the effect cost much more performance (which in turn would limit the number of objects that can be drawn in a frame even more). So yes, it can be done, but you'd drop to a very low number of Blitter Objects that can still be drawn at that point and I didn't see that as a good option myself. Regarding the Copper, it's free if the Blitter based background is used so it can indeed be used to increase the number of colours on screen fairly easily. I didn't do that here because I focus on one effect at a time in these videos to keep things more focused :)
@AA-vf3eu
@AA-vf3eu Жыл бұрын
​@@DutchRetroGuy but why we cant use 5th a blitter. It does not matter which plane is front and which is back
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
@@AA-vf3eu Bitplane 5 can't be used because bitplane 5 horizontally scrolls along with bitplanes 1 & 3. If you want to use bitplane 5 you'd either need to Blitter correct bitplane 5 and one of bitplanes 1/3. Or Blitter correct bitplane 5 and one of bitplanes 2/4. This is because the Amiga scrolling hardware can't scroll individual bitplanes horizontally, only bitplanes 1,3,5 together and 2,4 together. If you use bitplane 2 or 4 for the Blitter this isn't a problem as both 2 and 4 scroll together so you don't need to double correct. Your solution could work for vertical scrolling though (as there bitplanes can be freely scrolled separately), so that is something to keep in mind.
@AA-vf3eu
@AA-vf3eu Жыл бұрын
​@@DutchRetroGuy right now 4th bitplane belongs to single playfield operated by single scroll register. 5th bitplane belongs also to single playfoeld operated by single scroll register. I dont see a difference between them which would prefer on over the second
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
@@AA-vf3eu that is because you’re not considering the whole picture: the background layer consists of 2 bitplanes. These scroll at a different rate than the foreground. Since the bitplanes are coupled in how they scroll (2,4 and 1,3,5) the only viable way to combine bitplanes is to use 2 & 4. If you use 5, you either need to scroll 2,4 at the BG speed or 1,3,5 at the BG speed. In both cases you end up needing to correct at least 2 bitplanes with the Blitter - or accept fewer FG colours.
@djaccount5458
@djaccount5458 Жыл бұрын
Nice channel
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
Thanks :)
@djaccount5458
@djaccount5458 Жыл бұрын
I started write mario kart in javascript. I need solve problem, how make procedure of drive opponents kart. Today i will go to bookstore. Maybe i will find a clue..
@WSS_the_OG
@WSS_the_OG Жыл бұрын
It's shame there's no "love" button; like will have to suffice.
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
Thanks 😎
@SEngelsg
@SEngelsg Жыл бұрын
Howdy , there was some tricks to display more than 32/64 colors on the Amiga without using HAM. I think the game Universe did use some tricks to approximate 256 colors on screen by altering the palette as the background was drawn or something like that. I would love to hear your take on that - hope you can cook up a video about that as well.
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
Quite true, there's a number of games (and certainly a whole bunch of demos) that use the Copper to change the palette in real time, which allows for many more colours on screen than normal. Not many did it well, but those that did it well are pretty good. As you mentionded, Universe is one, but another great example is LionHeart. A more subtle one is Pang, which uses Copper reloading to change the background colours, which in turn means it shows more colours than you might initially think.
@SEngelsg
@SEngelsg Жыл бұрын
@@DutchRetroGuy Thanks a bunch - I had a look at Lionheart (which I never played) and Pang (which I did play a little bit) and funny enough I never noticed this back then , but now that you mention it it seems like you are right. As far as I remember the Amiga had 4bit each for R,G and B and I believe (or have fantasized about) that some demos did some tricks to effectively color cycle between value (example) 10 and 11 very rapidly to give the impression of a color in between. Not sure how well that worked on 50Hz displays, but as said - I would really appreciate your take on this, but no pressure. Thanks a bunch for your videos, love every single one of them :)
@BaddeJimme
@BaddeJimme Ай бұрын
@@SEngelsg I can think of three problems with that idea: 1) It will flicker. This may be okay for something energetic like Sonic the Hedgehog's shield, but not for some inert background decoration. 2) Most people used televisions as their display, and televisions were interlaced at the time. So the two colors you were switching between would appear in slightly different places. 3) A lot of Amiga games did not run at 50 fps. Often they would scroll the screen and move the sprites at 50 fps, which made them look nice and smooth, but the bobs were updated slower.
@sammyhopkins5733
@sammyhopkins5733 Жыл бұрын
Promo sm
@jiilaa_with_randomness
@jiilaa_with_randomness Жыл бұрын
Is that Lemmings... 😅
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
No that's my code bugging out and creating odd effects ;)
@SerBallister
@SerBallister Жыл бұрын
Impressive, I didn't think the amiga could move that much around at 6bpl. Looking forward to more of your videos!
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
Thanks!
@stephenkennedy6358
@stephenkennedy6358 Жыл бұрын
I realize the amiga had a leg up over the PC's of the day like the blitter and copper and various ham mode even though VGA had a slightly higher resolution of 640x480 and 256 colors before AGA came out. My question is at what time did the pc actually catch up and surpass the amiga in the graphics department.
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
That’s an interesting question because it really depends on how you look at it. When it comes to speedy 3D graphics for instance, you’re looking at a much earlier date than for 2D stuff. Considering only 2D for a moment, VGA was released in 1987 and could outdo the Amiga in terms of static images immediately (it may not have had HAM mode, but it did have many more shades of each colour to choose from). When looking at moving GFX (i.e. action games & demos), the Amiga held its own for longer. When I look at it myself, I’d argue you started seeing more impressive action games around 1990 and more impressive demos a little while after that (1993 perhaps?) - though there are always exceptions. I’m less aware of the PC demo scene so it may be that there’s better stuff from the early periods than I realise though! Looking at the very best (say a game like Lionheart), that wasn’t easy to beat - though I’d say a Super VGA enabled PC probably can outdo it, even though I’ve not seen examples of PC games like that from the era. So, it’s complicated 😅
@stephenkennedy6358
@stephenkennedy6358 Жыл бұрын
@@DutchRetroGuy I was referring to 2d. I realize the amiga lacks 3d.
@abcdef2069
@abcdef2069 Жыл бұрын
at 23:15 i almost lost or damaged my arms re-picking up those daggers and arrows. no more throwing units for me, mage's free ammo rest mages's free ammo rest mage's free... this i s how i play now. amiga version has defintely better sound effects than those of DOS version that sound like deflationg air balloons. good fortune to all dear modders.. rip sounds from amiga and add them to the dos version, so that i can play in the dosbox.. maybe not... fan patched ASE cache maps are too slow, ASE makes all fights too slow and lag, it sends strange pains to my arm muscles
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
Hmm, didn’t know there were fan made maps… might have to check that out!
@abcdef2069
@abcdef2069 Жыл бұрын
i think i said something wrong, i didnt mean patched by modifying the original game files. but instead, they added a memory resident program to read the game's ongoing data in the memory, so you run two programs, you can see it all over from youtube, i was able to play EoB finally few days ago after decades, EoB was the closest game to the game lands of lore 1. 90 degree fixed rotation RPGs, they are rare and unique
@abcdef2069
@abcdef2069 Жыл бұрын
it says AGA stands for American Game Association, and it also says in another way AGA stands for AmiGA computer. what is aga? AGA is generic, it can mean anything. i have AGA dune2, i have AGA starcraft 2. why are there lines in your game like being interlaced? is it what AGA does
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
In the context of the Commodore Amiga, AGA stands for Advanced Graphics Architecture, which is the upgraded chip set Commodore used in the Amiga 1200, Amiga 4000 and CD32. See here for more information: en.m.wikipedia.org/wiki/Amiga_Advanced_Graphics_Architecture
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
The scan lines are just how I set up the emulator because I liked how they looked 😅
@vbarr67
@vbarr67 Жыл бұрын
Very interesting, thanks.
@bramblemat1185
@bramblemat1185 Жыл бұрын
i have never heard of carts. on the Amiga, has anyone else?
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
As far as I know, no Amiga game has ever been released on cartridge. Would've been interesting to see for sure!
@danyoutube7491
@danyoutube7491 8 ай бұрын
There was some speculation when the inclusion of the PCMCIA slot for the A600 and A1200 was made public that this would allow cartridge games to be made, but I think such hopes were quickly doused by developers and/or Commodore because they would be too expensive (I don't know what the access speed would have been like either). There was never any other means of cartridge games appearing on the Amiga.
@Asphodellife
@Asphodellife 5 ай бұрын
I remember an interview (CU Amiga I think) where it was discussed that cartridge was probably the future of Amiga; but that was actually still in the 'A500' time period. I think it was an interview with Readysoft about their Laserdisc conversions. @@danyoutube7491
@bramblemat1185
@bramblemat1185 Жыл бұрын
is it just me or does the c64 hrdwr sprts seem smoother than amiga? is it a higher update?
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
I'm not sure what you refer too here: do you mean the objects moving on the screen? In case you mean those, I've made them out of Blitter objects and update them using a fractional speed, which can seem a bit less smooth compared to an integer speed but does allow more speeds to choose from. If I updated them at whole integer values, they'd appear fully smooth. If you meant the background hardware Sprites, those only update at one pixel every other frame (to keep them slower than the foreground), which might make them less smooth - though it looks a lot better on a CRT than on an LCD screen. The programs itself runs at 50Hz though ;)
@bramblemat1185
@bramblemat1185 Жыл бұрын
@@DutchRetroGuy your routines are reminiscent of jim power. but i was talking about c64 and amiga in general over the last decades. im not sure if the amiga was hard for devs. to get to grips with, like the atari jaguar. when you said fractional did you mean 8bits or did you mean floating points?
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
@@bramblemat1185 Ah, I see what you mean now. The main reason for the difference in smoothness is that many Amiga games ran at 25Hz updates -sometimes even lower than that :( - rather than 50Hz. This allows you to get more on screen, but makes the GFX updates less smooth for sure. The two main reasons for this were that a lot of Amiga games were written for the Atari ST first (which had a much larger market share for most of the 16 bit era) and then converted, often in record time and without using the Amiga hardware to the fullest. The second reason is that you're right - the Amiga hardware is harder to get to grips with than the average console or other system. Using the hardware isn't that hard, but using it efficiently and effectively can get really quite tricky. Modern homebrew games made in assembly (lots aren't by the way) often do run at full 50Hz. About the fractional: the Blitter object coordinates are in 16:16 fixed point format, so not quite floating point, but still allowing for very precise speed control.
@bramblemat1185
@bramblemat1185 Жыл бұрын
​@@DutchRetroGuy excellent , thank you. do you publish games?
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
@@bramblemat1185 so far, no games. Might try for one at one point, but we'll see :)
@cbmeeks
@cbmeeks Жыл бұрын
Great video! I would love to see a video on how Agony achieved all of the effects it had. It was a true masterpiece in Amiga tricks.
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
Thanks! Agony is indeed a graphical masterpiece, one of the best looking games on the Amiga 👍
@ninjaalex-yf5io
@ninjaalex-yf5io Жыл бұрын
bring back so many memories when writing demos and discovering the copper's bugs by yourself. We didn't have internet back then...
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
Yeah, these things were a lot harder when you didn't have all the modern tools we have today!
@davidepalombo2141
@davidepalombo2141 Жыл бұрын
Thanks
@PeteDabbs
@PeteDabbs Жыл бұрын
Jim Power used a sprite background layer didn't it?
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
Many games did, yeah. As far as I know, Jim Power used both the Amiga's Dual Playfield mode and a Sprite background for a total of three layers - though it didn't use all Sprites for the effect. If I remember correctly, it only used 2 Sprites for a 32 pixel wide repeating pattern.
@norik9910
@norik9910 Жыл бұрын
Roondar, your videos are always very nicely done and I learn a lot. Bravo.
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
Thanks!
@pvanukoff
@pvanukoff Жыл бұрын
As a kid I loved my Amiga but I was alwasy annoyed that consoles such as the Genesis or SNES could easily outdo what the Amiga could do (not in all ways, but you know what I mean). Now I know why!
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
Yeah, the SNES and Genesis/Mega Drive had some definite advantages over the Amiga when it came to Sprite and Layer hardware :)
@captainblood9616
@captainblood9616 Жыл бұрын
Love the twang sound effect when you use the bow 😄
@SirWhinesalotBTMC
@SirWhinesalotBTMC Жыл бұрын
Would be great to see how expensive a brute-force pure blitter 2 bitplane background is compared to these cleverer approaches, both in 16 color mode and 32 color mode (it would use the first 4 colors). That would leave nearly all colors plus all sprites, so knowing the "price" of that in comparison would be great. Also little comparisons like having the background layer not be fullscreen (for example, just a mountain range in the middle of the screen, lots of games did that) and how many more bobs you can get from doing that. Just some other ideas for parallax related videos you could do.
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
There's certainly more stuff that can be talked about when considering Dual Layer approaches :) I can probably give some clarity though, the Blitter cost for doing a 2 bitplane (rather than 1 bitplane) solution will cost an additional 8960 DMA cycles for the current 25FPS solution, or an additional 26880 DMA cycles for a 50FPS solution. The 50FPS solution is clearly too expensive, so I'll just focus on the 25FPS solution for the remainder of my answer. For a 4 bitplane screen, this change translates into losing ~4 BOBs@32x32 per frame and gaining ~2 BOBsat the same size due to dropping from 5 bitplanes to 4, for a total of 11 bobs per frame. As you point out, this would give you 8 additional Sprite colours. Note however that it would lower the total number of colours for the foreground/background also: from 20 to 16. If you want to go 5 bitplane, the costs get higher. You still lose the 8960 DMA cycles for the extra blitting, but don't gain the 4 vs 5 bitplane offset. Furthermore, 5 bitplane bobs are more expensive to draw. In total, you should expect to lose ~6 BOBs drawn per frame (@32x32), leaving 7. As for not going full screen, that roughly translates into a linear gain depending on how many pixels you drop. I.E. if you halve the effect size, you gain about half the cycles, which translates into about 2 BOBs @32x32. Note that in the case of the Blitter effect such an approach will complicate blitting of BOBs somewhat as there are now regions of the screen where blitting needs to take into account the Blitter effect and regions where it needs to work as normal.
@SirWhinesalotBTMC
@SirWhinesalotBTMC Жыл бұрын
@@DutchRetroGuy Very clear! Thanks :)
@TonimanGalvez
@TonimanGalvez Жыл бұрын
Really impressive, I am amazed by your clevernes. Well done.
@joecincotta5805
@joecincotta5805 Жыл бұрын
Awesome awesome technical breakdown of Amiga graphics/coding techniques!
@SledgeFox
@SledgeFox Жыл бұрын
Most interesting, thank you very much!
@Steril707
@Steril707 Жыл бұрын
Great content as always, Roony... :) Looking forward seeing new games implementing this. Wish I knew this when I created my little game.
@DutchRetroGuy
@DutchRetroGuy Жыл бұрын
Thanks! Hope you’re right 🙂
@ecernosoft3096
@ecernosoft3096 5 ай бұрын
@@DutchRetroGuy Welp you have Game number 1 implementing it, except with AGA since I don't feel ECS/OCS has enough colors to work with here...
@DutchRetroGuy
@DutchRetroGuy 5 ай бұрын
@@ecernosoft3096 nice! Looking forward to seeing what you come up with :)