atarionline.pl "Robbo" w trybie DIN - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1:
         
        CommentAuthorKaz
      • CommentTime21 Nov 2010 13:11
       
      Synthpopaloza, ktory eksperymentuje z nowymi trybami znakowymi:

      ->link<-

      podrzucil ciekawy pomysl:

      I was looking at the new Robbo games which got posted on atarionline.pl and I had a thought ... would a version of the game using my DIN mode be possible? That's the mode which flips ANTIC 2/ANTIC 4 and can get 10 colors on screen at Graphics 0 resolution, or 20 if you count artifacting. I was thinking of doing a test Robbo font in this mode ... would the original font be available in the source code? I think it would make the game look a bit closer to the VBXE version and not have a lot of flicker like those other modes.


      Fonty oczywiscie mamy juz wyrypane:

      ->link<-

      Yosh - jak widzisz szanse powodzenia? Pytam Ciebie, bo ostatnio grzebales w kodzie :)
    1.  
      I think the key to this is, does Robbo do any DLI character set changes in the playfield? If it does no more than 5 changes, I think it may be possible.

      How DIN works is, you need two display lists, one where the playfield area is ANTIC 2 and one where it is ANTIC 4. In addition, the character set pointer and the value for COLPF2 will need to change every vblank to keep the background from flickering and still allow you to use that color in ANTIC 4.

      In the meantime, i have found the Robbo fonts so I will work something up.
    2.  
      ok, a screenshot of one of the Robbo fonts in the DIN mode ... I am thinking, this would either work in DIN, or Super IRG 2 ... Super IRG2 offers an extra 3 colors, while DIN, having 3 fewer colors, will allow you to antialias the pixels for colors using bit pair 11 on the ANTIC 2 side, giving you an essential resolution of 320 pixels across. So you get 20 colors at near Graphics 8 resolution. you can get a lot of nice gradients as well with the usage of the artifacts from ANTIC 2, for example with the spaceship, or the laser cannons.

      Disadvantage is, artifacting can change how the font will look depending on which Atari you view it on. I have heard PAL artifacting is different from NTSC?

      I'll do up an ATR real soon, so you can check it out on a real atari. I might redo some of the colors too.
      • 4:
         
        CommentAuthorYosh
      • CommentTime22 Nov 2010 18:11
       
      Atr example would be cool. If level data will be unchanged, display list should be easy to swap (maybe even 'in-game')
    3.  
      Thanks ... I am working on it now ...

      I forgot to mention, the character set pointer (756) gets swapped every VBLANK too, as the DIN font is actually a double font (2048 bytes), one for ANTIC 2 and one for ANTIC 4, right after the ANTIC 2 font in the file. Very similar to that Super IRG mode. This might be tricky to do if there are any DLI character set changes on the playfield (i.e. extra fonts), as those pointers would need to be swapped too.

      I am also going to work on that very nice title screen font you used, and make that into a DIN font as well. It'll still be the same Graphics 0 text, just a bit more colorful :)
      • 6:
         
        CommentAuthorKaz
      • CommentTime22 Nov 2010 22:11
       
      Go guys, go! :)
      This font set looks very nice.
    4.  
      Ok, here's an ATR

      Run D:ROBBDIN1.TUR ... this is in Turbo BASIC but has a VBI routine which sets up the mode.

      This VBI routine uses 6 color registers, as follows:

      712/1045: Background color. These should be kept the same, although you can vary them a little, just not too much, to keep the flicker down.

      In addition, values poked into 1045 will affect the color of ANTIC 2 text.

      1043: Brightness of ANTIC 2 text. 0-14 only. Color comes from register 1045

      708: Playfield 0 in ANTIC 4
      1042: Playfield 1 in ANTIC 4
      1044: Playfield 2 in ANTIC 4
      711: Playfield 3 in ANTIC 4 (fifth color)

      Registers 1024 to 1033 control what registers get flipped each vblank by this routine.

      1024-1025: CHBAS (756)
      1026-1027: COLPF1 (709)
      1028-1029: COLPF2 (710)
      1030-1031: DLIST (560)
      1032-1033: CHACT (755)

      1034-1039 are spare registers, which when not used are poked with 255's.

      On the ANTIC 2 side, there are only the background color and the text color, plus 2 artifacted colors (purple and green on GTIA ATARI's) which cannot change. These interact with the ANTIC 4 colors to help produce the 20 colors. There is an extra color when pixels get plotted across bitpairs (i.e. 0110) in ANTIC 2 which may increase the color resolution.

      This VBI routine flips the following:

      CHBAS (756) between ANTIC 2 and ANTIC 4 char set
      DLIST (560) between ANTIC 2 and ANTIC 4 display lists
      COLPF1 (709) text lum in ANTIC 2 and playfield 1 color in ANTIC 4, to allow independent programming of colors
      COLPF2 (710) background color in ANTIC 2 and playfield 2 color in ANTIC 4, to stabilize display and allow use of this register in ANTIC 4
      CHACT (755) between 2 (ANTIC 2) and 0 (ANTIC 4) to kill inverse video on the ANTIC 2 side and allow for use of ANTIC 4 fifth color (711)

      The ANTIC 2 and ANTIC 4 display lists have been stored in page 6. these can be moved but should be kept on the same page of memory so that the only location that needs to be flipped is 560. 561 is poked with the page # where your display lists are stored.

      I've also included my font editor if you want to play with this yourself. D:ICEIRG.TUR which will display in Super 0, Super IRG, Super IRG 2, and DIN.

      Helpful hint: This editor edits in bit-pair (4x8) mode, so usage of bit pairs 01 and 10 next to bit pairs 11 in ANTIC 2 will allow for antialiasing, and help give the 320 pixel across resolution. Have a look at the question mark block and you will see the higher resolution. I have not enabled the CHACT flip in the editor, so inverse characters will look terrible. Sorry :)

      I may change the light blue on the maze blocks, it looks too flickery. :)

      Working on the other fonts now, and also the title screen font, which I noticed is used in a DLI change on the game screen. We can make this a DIN font on the game screen as well (add the DLI reg to the flip routine) or leave it as normal ANTIC 2, as it is easy enough to disable the antic 4 color overlay and just use it as a normal ANTIC 2 font.

      The screenshot was in Atari800win with artifacting set to GTIA. I'm eager to see what this looks like on a real Atari, the colors will be different on machines which do Graphics 0 artifacting differently.
    5.  
      A bit more progress, I have the other half of the robbo font (including the title character) recolored, and this screenshot is of me recoloring the title font into a gradiated gold color. Again, in DIN mode ... I love this mode! :)
    6.  
      Ok, I have a new ATR for you

      on this ATR run the following programs:

      ROBBDIN1.TUR - The Robbo title screen font / score font

      ROBBDIN2.TUR - First Robbo playfield font

      ROBBDIN3.TUR - Second Robbo playfield font

      For the playfield font, feel free to play around with the color settings. I deliberately made Robbo using bitpair 11 (playfield 2/3) in ANTIC 4. That way, maybe you want to turn him inverse and make him a different color?

      The aliens, I went for a greenish color, while the bat I decided to make into a greyish-blue color. I did some antialising on the teleport portal, and some subtle shading which makes it look more realistic.

      I am going to do some more antialising work on Robbo and see if I can get him to 320 pixel resolution, since he is in bitpair 11 in ANTIC 2.
      • 10:
         
        CommentAuthorKaz
      • CommentTime23 Nov 2010 07:11
       
      I tried it only under emulator. Have you watched it on real Atari? Is flickering so strong in real?
    7.  
      I've only tried it on emulator ... using both PAL and NTSC setting. NTSC Atari's tend to do better with this mode than do PALs as the refresh rate is faster.

      I believe this will look better on a real Atari. It flickers worse under Atari800win because the PC monitor's refresh rate is faster than a real atari, it causes artifacts in the display. You can also view it using emulator Atari++ with Antiflicker set ... but the artifacting is different so the colors will be different.
    8.  
      Ok ...

      On this ATR, run ROBBDIN3.TUR

      Changes this time are, I antialised most of Robbo's shapes, so that he should appear at a 320 across pixel resolution. I also antialiased the eyes and the teleport portal as well, the outlines of these should now be 320 pixel resolution.

      The ICEIRG editor has had a couple of bug fixes with the disk loading routine so I included that again as well.