xxl Posted July 5, 2008 Share Posted July 5, 2008 zx spectrum: http://www.pouet.net/prod.php?which=49698 and a8: http://atari.pl/copper.obx Quote Link to comment Share on other sites More sharing options...
Tezz Posted July 5, 2008 Share Posted July 5, 2008 Fast! Quote Link to comment Share on other sites More sharing options...
+MrFish Posted July 6, 2008 Share Posted July 6, 2008 zx spectrum:http://www.pouet.net/prod.php?which=49698 and a8: http://atari.pl/copper.obx Any way to avoid the shearing/flickering? Quote Link to comment Share on other sites More sharing options...
Heaven/TQA Posted July 6, 2008 Share Posted July 6, 2008 since 20 years I never captured how these "kefren bars" work... can someone tell me what is driving the illusion? because I don't believe that the screen is been rendered fully every frame... Quote Link to comment Share on other sites More sharing options...
MaPa Posted July 6, 2008 Share Posted July 6, 2008 (edited) since 20 years I never captured how these "kefren bars" work... can someone tell me what is driving the illusion? because I don't believe that the screen is been rendered fully every frame... Once I looked in monitor of some demo how the kefrens bar are done. IIRC "every" line of DLI was reffering to the same address (in this case to zero page for speed) and just after every WSYNC you add new data and in VBLANK you just clear the one line (will clear "whole" screen) and repeat. But this demo does it in different way (just looked at DLIST...). Edited July 6, 2008 by MaPa Quote Link to comment Share on other sites More sharing options...
Heaven/TQA Posted July 6, 2008 Share Posted July 6, 2008 Ahhh... Mapa, does make sense a little bit... so the 1 line is rendered on the fly every scanline, right? but you don't have much time each line to render a bit? Quote Link to comment Share on other sites More sharing options...
MaPa Posted July 6, 2008 Share Posted July 6, 2008 Ahhh... Mapa, does make sense a little bit... so the 1 line is rendered on the fly every scanline, right? but you don't have much time each line to render a bit? I never tried to do it, but if you have 1 kefren bar you just add/render like 1 byte per line, you just need to calculate new position on some sinus trace or can have it precalculated. Remember that whenever you put data onscreen they are repeated vertically to the bottom until you put some other data in that place, so you render "only" the top edge of the bar and the "wall" down from there is there automatically. It's simplified but the basics can be like that. Quote Link to comment Share on other sites More sharing options...
Heaven/TQA Posted July 6, 2008 Share Posted July 6, 2008 yeah. now I got it... First i thought they shuffle around the lines (simple on Amiga and Atari800 due to LMS command of the "copper list") but it seems it is even far more simpler... have to try that on my own... Quote Link to comment Share on other sites More sharing options...
eru Posted July 6, 2008 Share Posted July 6, 2008 MaPa is right, on Atari this should be done by re-using the same line. Unfortunately, you can't do this on speccy, and I think XXL just did one-to-one conversion. Here's a quick hack how it should work/look: executable: http://homepages.cwi.nl/~marcin/a8/copperu.xex sources: http://homepages.cwi.nl/~marcin/a8/copperu.asx 1 hour of work from scratch, not optimized at all. btw, on Atari there is a 256-byte intro that does something similar: http://www.pouet.net/prod.php?which=9761 (the part not on the screenshot) Quote Link to comment Share on other sites More sharing options...
Heaven/TQA Posted July 6, 2008 Share Posted July 6, 2008 damned... Eru again faster than me... Quote Link to comment Share on other sites More sharing options...
Oswald Posted July 6, 2008 Share Posted July 6, 2008 (edited) MaPa is right, on Atari this should be done by re-using the same line.Unfortunately, you can't do this on speccy, and I think XXL just did one-to-one conversion. yep. I have once coded a c64 version. you need an lda screen,x and mask,x ora bargfx,x sta screen,x sequence for each byte updated. (x contains the horizontal offset of the bar, and use clever tables) how many times you do this depends on how wide bars do you want (and at wider ones you dont need to mask the middle). on a8 colors could be changed on a line basis to make it look niftier than c64 versions, and there is more time to do wider bars. (only wsync at the top of the screen, then keep a constant timing for each line to save speed.. imho) Edited July 6, 2008 by Oswald Quote Link to comment Share on other sites More sharing options...
Heaven/TQA Posted July 6, 2008 Share Posted July 6, 2008 Oswald, how did you do kefrens on c64? render a complete screen or gfx window? Quote Link to comment Share on other sites More sharing options...
eru Posted July 6, 2008 Share Posted July 6, 2008 It's amazing... I looked at the effect, and I though: "Hmm, it's a bit different than kefren bars" - w r o n g So I reimplemented the same thing Btw, Oswald, I think you need to use Y in the AND/ORA combination Quote Link to comment Share on other sites More sharing options...
Oswald Posted July 6, 2008 Share Posted July 6, 2008 Oswald, how did you do kefrens on c64? render a complete screen or gfx window? there's a vic trick (costs 6 cycles / line at best) which will repeat a gfx line endlessly. Quote Link to comment Share on other sites More sharing options...
Oswald Posted July 6, 2008 Share Posted July 6, 2008 It's amazing... I looked at the effect, and I though: "Hmm, it's a bit different than kefren bars" - w r o n g So I reimplemented the same thing Btw, Oswald, I think you need to use Y in the AND/ORA combination yeah probably but I got a hangover and some insomnia as an excuse:) Quote Link to comment Share on other sites More sharing options...
eru Posted July 6, 2008 Share Posted July 6, 2008 've been there done that Quote Link to comment Share on other sites More sharing options...
carmel_andrews Posted July 6, 2008 Share Posted July 6, 2008 So....Copper lines and 'Copper Lists' are the same thing then (just a different way of programming) Quote Link to comment Share on other sites More sharing options...
xxl Posted July 7, 2008 Author Share Posted July 7, 2008 no, copperlist is something like dli ( not exactly ). Quote Link to comment Share on other sites More sharing options...
Bryan Posted July 7, 2008 Share Posted July 7, 2008 A Copper List is like a Display List, except it's much more flexible and can program registers other than just video ones, so it removes most of the need for things like DLI's by automating register changes as the screen is drawn. The name Copper was chosen because it sounds like Co-processor. -Bry Quote Link to comment Share on other sites More sharing options...
Heaven/TQA Posted July 7, 2008 Share Posted July 7, 2008 So in theory I could reposition hardwaresprites on the fly by the copper list? shame on me that I have an a500 and a1200 and never touched programming them... Quote Link to comment Share on other sites More sharing options...
Rybags Posted July 7, 2008 Share Posted July 7, 2008 From memory, you can get copper instructions to load just about any hardware register relating to graphics/sound. But there's a limit per scanline. Got the hardware manual here, just too lazy to pull it out. I also have owned Amigas for > 15 years, but never really got into programming them beyond batch type files. I guess the awesome games just made us too busy in that regard - on the ST I got into a fair amount of programming. Quote Link to comment Share on other sites More sharing options...
Heaven/TQA Posted July 7, 2008 Share Posted July 7, 2008 I was more into demos watching on A1200... not so often played games (same time I got my SNES). Quote Link to comment Share on other sites More sharing options...
bfollett Posted July 7, 2008 Share Posted July 7, 2008 What file format is .obx? Can you use Atari800win to run it? I can't figure out how. Thanks, Bob Quote Link to comment Share on other sites More sharing options...
+Philsan Posted July 7, 2008 Share Posted July 7, 2008 What file format is .obx? Can you use Atari800win to run it? I can't figure out how. Rename the extension in .xex and the program will start with emulator. Quote Link to comment Share on other sites More sharing options...
+Philsan Posted July 7, 2008 Share Posted July 7, 2008 Marcin, what is the colored bar in the lower part of the screen of your beautiful copperu? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.