Graphics in BASIC - 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: CommentAuthorPaladina
    • CommentTime26 Oct 2009
    Please help, how can I use colors in basic via Graphics 8 or 0.

    I would like to do good game with 8 or more colors and with better resolution, please help.

    I think it will go with Interrups to make first level of picture - color A, then second level COLOR B ... or any other help?

    There are example and I know that is possible in BASIC or TurboBasic :D


    mód 320x192 pixel, 14 colors.

    TnX. Paladina.
    • 2:
    • CommentTime27 Oct 2009
    If you want to acquire more than 2 colors in these modes, you have to use Display List Interrupts (DLI). If you know a bit Polish and Action!, you may get the idea here:
    Good luck
    • 3:
    • CommentTime27 Oct 2009
    You can also use sprites (Player Missile Graphics) to cover some parts of screen to get extra colors. We (Scalak and me) used this trick to color up pictures in "Dratewka the Shoemaker":


    You can find there listing in Turbo Basic too.
    • 4: CommentAuthorPaladina
    • CommentTime27 Oct 2009
    Yeah, its good idea, but who can help me? Some example please, I need make PIXEL with select of any color. For static pictures, "Dratewka the Shoemaker" is super game, Iam working and translate it to CZECH. But I like to do as in this game pictures with more colors.

    10 GRAPHICS 24
    15 COLOR 1
    20 PLOT 10,10
    30 DRAWTO 10,20
    35 COLOR 2
    40 POSITION 50,50
    50 ? #6;"A"
    100 GOTO 100

    Ok, who can HELP a send me or write there some easy example to made PIXEL with color in Grafik 8 or 24??
    It must be in Basic ot Turbo Basic 1.5 :D Thx. Paladina.
    • 5:
    • CommentTime27 Oct 2009 zmieniony
    Your question suggests you would like to use an extra colors for any pixel you wish. This is not possible! DLI and PMG can help to color up some parts of your pictures but pixel colors will never be fully independent.

    I'm afraid you should start your learning from books about Atari graphics in general, not from programming examples. It is important to understand Atari limits to get the best results. For example read about GR8 in "De Re Atari" or similar book, later about DLI and then about PMG. We can help you convert this knowledge into examples AFTER that.
    • 6: CommentAuthorPaladina
    • CommentTime27 Oct 2009
    Uf,ok if you look at new game NIGHTSHADE or at the link to Rastr, you can see thera many color.

    Question. IS possible in Basic or TB print at X,Y one symbol and then via interrupt at the same place second symbol in other color?
    5 GRAP.0
    10 COLOR 1:POS. 10,10:PRINT "A"
    30 COLOR 3:POS. 10,10:PRINT "B"

    I have see for examples, but I understand it realy good, then who is really good and help me?

    This must GO! :D Dont say,that the Spectrum ane Commodore is better in this as ATARI :/ Hey, atari programmer this si the Quest of Atari Honor :D
    • 7:
    • CommentTime27 Oct 2009 zmieniony
    I can help you, unfortunately I'm not so good at drawing graphics as KAZ. But I understand a little graphic options atari.
    My SKYPE - peta.nek
    ICQ - 287852316
    • 8:
    • CommentTime28 Oct 2009 zmieniony
    Fly - it seems Paladina needs someone to code assembler procedures for him, not a graphician.

    Paladina - it is possible to write assembler routine to handle this effect and to use it in Atari Basic or Turbo Basic. However I really doubt someone will spend time on it - you really need coder to listen your ideas, but believe me coders usually have their own ideas and they are busy enough with their own projects :(

    Yes, Nightshade uses DLIs and PMG to color up the screen. However, author of Nighshade coded that in assembler.
    • 9: CommentAuthorPaladina
    • CommentTime28 Oct 2009
    Ok, then the example. I write little program from magazine, but I am not correct understand the Poke adress of DLI.
    This is exampla in Atari800win Emul for Grafic 9 with 256 colors.
    Ok,when I change the line 20 the Grafik from 9 to 8+16 and remove the REM for make free Poke on line 30, you will see more colors in GTAFIK 8!, my problem is I dont know how change the DL adress to make more colors on Screen.

    Screen = active memory
    DL = hide memory, there made change and send with more colors to Screen to see more colors. If I know, Correct ?

    I need help to reprograme this example for Grafik 8 and 15 and understand this handle of effects :D

    You can also do a vbi switch between color registers to get extra colors. You set up two screens in Graphics 15, toggle the playfield rgisters and the screen memory location every VBI, and you get 10 colors in 160x192
    • 11: CommentAuthorPaladina
    • CommentTime28 Oct 2009
    Yeah,that it, BUT I DONT KNOW HOW IT DO!! Please help..I will this use in GR 15 and GR 8. Ok, who is the best programmer in basic or TurboBasic?? And can It Do it not only for me,but for more programmer tah will do Remakes of old games or own ?
    There are a couple of numbers in your DATA statements at line 105 ... 26,208 ... change the 26 to 24, and it will affect register 710 in Graphics 8 ... to 23, it affects register 709 in Graphics 8 (but that is luminance only) ...

    This will also work in Graphics 15 as well, but you will have to change that number at line 105 ... using 22-26 for registers 708-712. Using 27 allows you to mix GTIA modes (graphics 9-11) on the same screen.
    • 13: CommentAuthorPaladina
    • CommentTime29 Oct 2009
    Ou,super,that it what I mean :D # Synthpopalooza, can you help me more pleas? Ok, now we see more color in GR 8. How can I made procedure, mayba in Turbo Basic to draw via this color program a one pixel ar X,Y of Z color?
    The routine you are using would be difficult to work, as is. What it basically does is, it skips every 8 scanlines on the Graphics 8 (or 15) screen, and sets all 8 rows to one of the 16 luminances. What would be needed would be a custom DLI routine which would read up to 192 values out of a color table and allow you to set a different color on each row for a specific register. I do have a routine which does this in Graphics 0, but it is no good for mode 8 or other bitmap modes, and I am not very good at assembly.

    Also: The DLI is not programmable per pixel, but per screen row. It basically takes all pixels which are of that color register, and changes them all on that row.

    In addition, graphics 8 is a special case, in that the pixel has it's own programmable luminance, but the hue is always going to be the same as the background color. So you would have the choice of either setting the luminance of your pixel on each scanline to one of 8 values, or setting the background color (710) to one of 16 hues, which would affect the hue of your pixels.

    You do know that you can use artifacting (plotting in only even or odd number columns) to get extra colors in Graphics 8?

    Incidentally, I found this routine which claims to use 10 colors in GRAPHICS 15, through use of a VBI. I suspect you could modify it for Graphics 8, which would likely get you 3 colors plus the background. I haven't looked into it as yet.

    • 15: CommentAuthorPaladina
    • CommentTime9 Nov 2009
    TO * Synthpopalooza * or other programmer. I probe it via PMG, but I cannot it more player pixels at one row, how can I do it? Or via the Interrupt,that you say. Do you know who can maybe help me in this pleas? OR if you can more?
    • 16:
    • CommentTime25 Nov 2019
    Tak przy okazji, podstawy grafiki Atari w Basicu opisuje Steve tutaj, a ponoć zapowiada się dłuższy cykl dla początkujących, robienie atarowskiej tęczy, używanie duszków, etc:

    Pierwszy odcinek o trybie Graphics 1:

    Drugi o Graphics 3:

    Jest też parę programów w Atari Basic, które mają być wkrótce objaśnione:


    No i początek kursu programowania w AB: