Commit Graph

  • 7fc1eef486
    added YT viudeo link to the talk master Gunstick 2021-01-31 10:25:16 +0100
  • 187271cadf documentation added pdf with paper notes in the design phase of the demo. this is where the invention of the scroll technique was born opd libreoffice presentation detailing how the demo is working Georges Kesseler 2015-02-09 18:33:24 +0100
  • f5492b7091 Create README.md Gunstick 2015-02-08 22:25:16 +0100
  • bc5cabb261 Create LICENSE.md Gunstick 2015-02-08 22:22:22 +0100
  • 1756405236 Finished, it is finished! Added nice intro disting. Better bounce sync and precalc more in hwbouncer table. Georges Kesseler 2012-02-21 23:26:15 +0100
  • ee19981e8d Lots of utilities and original grafics which I forgot in previous release. Some more work on the distorters and a little PSG init correction. Added reset demo handling. Georges Kesseler 2012-02-21 23:23:10 +0100
  • cecd6521ae The ordered grafics are here! The sound is fine, maybe a bad soundchip init was causing the bad quality. Demo statup is also now clean (background & buffer initialization). The sound problem may have been a bad soundchip init. And using old voltab again. A lot of code (shifting routines) is now in external includes Georges Kesseler 2012-02-21 23:03:31 +0100
  • 32912ebe16 Welcome to the final sound sample! "You" by Boytronic. It's still a bit whizzing. The previously mangled source has been corrected. Added resync to the hardware jumping so it's moving with the music. We now have self modifying code to jump into the copy routines The famous cheatcode for the bus view appears. Digi volume conversion table is now external and using a louder version Background playfield is also an include now Georges Kesseler 2012-02-21 22:57:44 +0100
  • 9230ac6ded Use devpac 2.20 for this and newer sources. Use 2.00 for older sources. Yes, this is incompatible! To work around that a global substitution was done which garbled the source. Oh well does not assemble... Also added new sound. Georges Kesseler 2012-02-21 22:29:58 +0100
  • c1f5c1ba42 Name change! It's now officially called parallax distorter. Quite some code added to make it into the megademo. Sound is now good, but fullscreen vanished. THis may be due to the assembler optimizing. Change the sample to infinity.dmn and then you can see the scroller, but the sound is broken. Very funny to debug that... Georges Kesseler 2012-02-21 22:09:14 +0100
  • 3dd7b21ded And another sample which is quite sensitive to a bad player routine. Assembple with 0 for digitest and you see color switches where the soundplayer is located. Needs to be every second line. Little speed gain: a multiplier table by 208 at _mul208: Georges Kesseler 2012-02-21 21:54:17 +0100
  • 25a84c62f6 This is the source code from which the backported bit came from. Sound is same as previous version. Changed wave to see why the syncscroll is flickering. Georges Kesseler 2012-02-21 21:50:18 +0100
  • bd02f08380 Added some code which plays the digit without anything else. Press any key to start the demo and listen to the difference. That's how it sounds when you don't play a sample every time. It's only 7.5kHz. Georges Kesseler 2012-02-21 21:47:30 +0100
  • 4b6672abcf new sound files available. Little work on making digit sound better. It does not yet play for the full duration of the VBL. Georges Kesseler 2012-02-21 21:42:24 +0100
  • 7ae258042a font and digisound are at the beginning of the program (always think differently, it may be faster). The planes of font and background are switched. No more right border flickering. Color 0 is now a font color. Georges Kesseler 2012-02-21 01:51:04 +0100
  • 33d0a26f89 working on new font layout Georges Kesseler 2012-02-21 01:47:31 +0100
  • 96f7f81eb1 we can add an independant distorter on top of the parallax background Georges Kesseler 2012-02-21 01:40:04 +0100
  • 734611f79d First sound! Ugly sample quality but it's working. A lot of trickery as there were some clockcycles missing. Usage of a7 to address hardware registers with movep. Quite some heavy code rearrangement of which I forgot what it was all about. Note that the background now bounces with double speed as that looking more fluid. Georges Kesseler 2012-02-21 00:40:18 +0100
  • ad0dcaa25e adding digisound player. notice that bus equ 0, so that diables the hardscroller and you can move with the numpad around. the digirout is doing color changes. the white bars should be on every second line to enable a nice and clean sound Georges Kesseler 2012-02-21 00:37:08 +0100
  • 2d787af42d changed playfield dist color. something is not right, the font is still not there Georges Kesseler 2012-02-21 00:32:15 +0100
  • b240884460 some work on the hardware bouncing. Happy to see a screen full of crappy grafics distorting. Maybe I should sort out that font issue... Georges Kesseler 2012-02-21 00:28:01 +0100
  • b39a40fd86 some code backported from several versions in the future so that the overscan still works. You can view the original screen by changing in the first line the equ of "backport" to 0 instead of 10 Georges Kesseler 2012-02-21 00:20:15 +0100
  • c77dd58daf Well this one assembles but does not work. The oeverscan does not sync and remains closed. Some 50Hz switches added in preparation to add digisound too. Georges Kesseler 2012-02-20 01:41:17 +0100
  • 00bda99890 Added code to open lower border. Code is called in every line reading switches from a table. This had to be put in all copyrouts. Now it shows that it's sometimes important where on the screen you place your code. Georges Kesseler 2012-02-20 01:38:53 +0100
  • 64d6fcafa6 Starting to introduce the playfield code. Those background bars will soon explode. Using macros for this. Georges Kesseler 2012-02-20 01:35:31 +0100
  • ed3924ea3d all overscan integrations done: replace color switches by resolution switches More of the overscan is now showing. Georges Kesseler 2012-02-20 01:32:11 +0100
  • b2a7549fbf moved includes into subdirectory font has now nice vertical bars as background 20 copy routines integrated Georges Kesseler 2012-02-20 01:24:35 +0100
  • f2459fb737 Temporarly copy less lines as there's not enough CPU time left. Some marcros added to ease integration. 8 copy routines have been integrated: nicely aligned colors. digisound player code pasted after "end" is inactive. Georges Kesseler 2012-02-20 01:09:14 +0100
  • 408425066d Bye bye debug message and colored hardwarescroll. Also removed the annoying flicker as I need to integrate the scroll copy routines The scroll is looking funny becauuse I force always cpy00 which is the first to be integrated into overscan. First step: place color changes instead of resolution switches. Georges Kesseler 2012-02-20 01:06:12 +0100
  • 1f9c182296 Added comments which registers are free to facilitate integrating. The light blue part indicates the time needed to copy the scroller to the screen. Georges Kesseler 2012-02-20 00:53:57 +0100
  • c0ae2f6775 Integrating more overscan needs to unloop all the shifting routines. We also now have a nice scrolltext. Check out the awkward trick to write it. And welcome back top border sync. Georges Kesseler 2012-02-20 00:50:39 +0100
  • a9916c6901 This now starts to really look like a demo. Not yet fullscreen though. CPU time is now completely used as a little routine got added to copy the scroll into double buffer. Could it be more optimized? Yes, but does it have to? Georges Kesseler 2012-02-20 00:44:37 +0100
  • efdca8522d Some more overscan integration, in the process we lost the top border opening. If I'm right, the blue part minus hardscroll is the free processor time. That's not much... Georges Kesseler 2012-02-20 00:40:40 +0100
  • c583453fcc As we have hardscrolling, show it off by jumping up and down. This changes screenadr and we need to use a virtual address (logbase) to draw the scroll. Notice some places where lea is replaced by add and other places where move is replaced by lea. Takes less time. Georges Kesseler 2012-02-20 00:39:32 +0100
  • 95d5e0fd9e Now we are activating the multi buffered screens! First light of the full screen distorter capability. Just imagine how excited you are when this idea actually works. Georges Kesseler 2012-02-19 23:15:53 +0100
  • 6ac0bdbad9 Some more overscan integrating ALso note the replacement of jsr/rts by jmp/bra for the copy routines Georges Kesseler 2012-02-19 23:09:28 +0100
  • 7906f93d29 Finally the first wavy scoller does it's debut. Notice that it's never going right. You can change the wave by uncommenting lines in wavetab to get other moves. The code moving right breaks the overscan on the lower part of the screen. Georges Kesseler 2012-02-19 00:57:52 +0100
  • ed0272cd3f place holders for digi sound and playfield distorter appear code starts to get integrated into overscan switches hardware scroll table is now in a binary include Georges Kesseler 2012-02-19 00:54:45 +0100
  • fc68e5f82f little changes Georges Kesseler 2012-02-19 00:52:30 +0100
  • 63d9ec0d8a Some code moving around. Not sure what this did, but the assembled result has now vertical bars instead of scroll text. Hmm vertical bars... playfield. Georges Kesseler 2012-02-19 00:48:22 +0100
  • 9a76b1d84d This is one of the most important decisions. Reduce the scroller height from the classic 32 pixel height to 26, because there is not enough CPU time left to do 32 pixel! We can do this because there is no 8 lines/scroll limit when using the hardscroller. Georges Kesseler 2012-02-19 00:32:21 +0100
  • 614af0fc1a the line marked "wow!" needs an expalantion. Maybe one day I will find it. New in this code is the distorter wave handler. This code does not assemble. Georges Kesseler 2012-02-19 00:25:44 +0100
  • 51e8cb4095 jepp, thats a sort of lea storing directly the address Georges Kesseler 2012-02-19 00:17:50 +0100
  • d00a60d356 26 copy routines. The screen is 416 px wide. Scroll buffer is same width to save space. But we do not shift the scroll buffer around. Instead there are 416/16=26 different cases in the scroll buffer where the left border of the scroller is. We simply use 26 different copy routines. If you scroll now too far with the numpad, the copied scroller will overwrite code, devpac or system. Crash ahoi! Georges Kesseler 2012-02-18 23:34:18 +0100
  • a3bb82c6fd parallax distorter. It was first meant to be an independant distorter on 2 playfields, only later it became the parallax distorter. This version features just hardware scroller with overscan. Use numpad to move around. Georges Kesseler 2012-02-18 23:32:41 +0100