atarionline.pl C64 one-liner - 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: CommentAuthormono
    • CommentTime14 Apr 2021
     
    Ktoś ma pomysł jak zrobić to:
    tak prosto, jak na C=?
    • 2: CommentAuthormrroman
    • CommentTime14 Apr 2021 zmieniony
     
    Tylko coś takiego mi przychodzi do głowy :). Znaków nie mamy :).

    10 GR.0:POKE 82,0:POKE 756,128:FOR I=0 TO 7:POKE 32784+I+I*8,255:NEXT I:FOR P=0 TO 9999:? ")('&%$#$%&'()";:NEXT P

    Ale wolniej działa interpreter w Atari. Albo procedury wyświetlania tekstu.
    • 3: CommentAuthormono
    • CommentTime14 Apr 2021
     
    Pięknie. Przesuwa się skokowo, bo obraz w Atari skroluje się o jedną linię logiczną, czyli co 3 linie fizyczne.
    • 4: CommentAuthormono
    • CommentTime14 Apr 2021 zmieniony
     
    Trzeba ustalać mapę linii logicznych zapisując rejestr LOGMAP edytora. Poniżej trywialna modyfikacja
    10 GR.0:POKE 82,0:POKE 756,128:FOR I=0 TO 7:POKE 32784+I+I*8,255:NEXT I
    20 POKE 690,255:? ")('&%$#$%&'()";:G.20
    i wszystko działa jak należy :)

    Edit: Aaaaa, zrobiłem two-liner. Ale one-liner też będzie działał:
    10GR.0:POKE 82,0:POKE 756,128:F.I=0TO6:POKE 32792+I+I*8,255:POKE 32793+I+I*8,255:N.I:F.I=0TO1:POKE 690,255:? ")('&%$#$%&'()";:I=0:N.I
    • 5: CommentAuthorrobert
    • CommentTime14 Apr 2021 zmieniony
     
    Jeszcze kursor wyłączyć
    10GR.0:POKE752,1:POKE82,0:POKE756,128:F.I=0TO7:POKE32784+I+I*8,255:N.I:F.I=0TO1:POKE690,255:?")('&%$#$%&'()";:I=0:N.I

    Wersja do skopiowania i wklejenia do Altirra (przed wklejeniem wpisać POKE 82,0)
    • 6: CommentAuthormrroman
    • CommentTime14 Apr 2021
     
    @mono: Racja. Tak jakoś mi się zdawało że scroll jest co 3 linie. No i fakt wystarczy 7 znaków :). Jeszcze się zastanawiałem jak zrobić nieskończoną pętlę. Trik z I=0 bardzo fajny :).
    • 7: CommentAuthormono
    • CommentTime14 Apr 2021 zmieniony
     
    @robert: Racja! Oto
    10GR.0:POK.82,0:POK.752,1:POK.756,128:F.I=0TO6:POK.32792+I+I*8,255:POK.32793+I+I*8,255:N.I:F.I=0TO1:POK.690,255:?")('&%$#$%&'()";:I=0:N.I
    Zastanawiałem się zawsze co daje skrót "POK." do "POKE" no i teraz wiem :)

    Edit: Co prawda nasadziliśmy POKE'ów i zdefiniowaliśmy generator znaków, ale Atari dało radę :)
    • 8:
       
      CommentAuthorcrrn
    • CommentTime14 Apr 2021
     
    [...]
    Ale wolniej działa interpreter w Atari. Albo procedury wyświetlania tekstu
    [...]

    no popatrz a w inny wątku TDC pisze że Atari 4 razy szybciej sprajty obsługuje...
    coś musicie źle robić :D

    sorry nie mogłem się powstrzymać :)

    peace!
    • 9: CommentAuthormono
    • CommentTime14 Apr 2021
     
    Hehe. Ale my tu nie mamy sprajtów :) A fala ma działać wolno.
    Zrób lepiej ten program na C+4 :P
    • 10:
       
      CommentAuthorcrrn
    • CommentTime15 Apr 2021
     
    Program na C+4 wygląda identycznie jak ten na C64. I działa tak samo :P :)
    • 11: CommentAuthormono
    • CommentTime15 Apr 2021
     
    Wiem, wiem. To taka podpucha. Ale kolorki byłyby inne :)
    • 12:
       
      CommentAuthortdc
    • CommentTime15 Apr 2021
     

    crrn:

    no popatrz a w inny wątku TDC pisze że Atari 4 razy szybciej sprajty obsługuje...
    coś musicie źle robić :D

    sorry nie mogłem się powstrzymać :)

    he he he;)

    Ale ogólnie ten wątek pokazuje, że tak łatwo się tego w Atari BASIC zrobić nie da jak na C=64.
    No nawaliliśmy (my atarowcy) tutaj kompletnie:P
    • 13: CommentAuthorpirx
    • CommentTime15 Apr 2021 zmieniony
     
    jeszcze można dodać POKE 622,1 przed gr.0 dla ładniejszego skrola. z poke 710,0 robi się jeszcze psijemniej :]

    10 POKE 622,1:GRAPHICS 0:POKE 710,0:POKE 82,0:POKE 752,1:POKE 756,128:FOR I=0 TO 6:POKE 32792+I+I*8,255
    20 POKE 32792+I+I*8,255:POKE 32793+I+I*8,255:NEXT I:FOR I=0 TO 1:POKE 690,255:? ")('&%$#$%&'()";:I=0:NEXT I
    • 14: CommentAuthormono
    • CommentTime15 Apr 2021 zmieniony
     
    @pirx: Ale to nie o to chodzi. Zgrubny scroll powoduje, że ten ekran naprawdę faluje. A fala idzie z prawa na lewo.

    Edit: Z prawa na lewo oczywiście.
  1.  
    Moszna prościej :-)

    • 16:
       
      CommentAuthortdc
    • CommentTime15 Apr 2021
     
    @mgr_inz_rafal - faktycznie piszesz to z podobną prędkością co ten na C= więc faktycznie udało się to Tobie zrobić na tym samym poziomie;)))
    • 17: CommentAuthormono
    • CommentTime15 Apr 2021
     
    Oszustwo! Oszustwo! :) Co to za generator znaków Panie Kolego Magistrze Inżynierze? Hę?
    • 18:
       
      CommentAuthormgr_inz_rafal
    • CommentTime16 Apr 2021 zmieniony
     
    @tdc
    Przy tworzeniu portów najważniejsze jest przecież, żeby zachować klimat :)

    @mono
    Przepraszam, ja tylko wziąłem kilka POKE z kodu mrroman-a, nie miałem świadomości, że to jakiś generator :D
    • 19: CommentAuthortebe
    • CommentTime16 Apr 2021
     
    wersja dla MP z dopalaczem E:
    ->link<-

    ps.
    można zaremować EFAST w USES i będzie standardowo
    • 20: CommentAuthormono
    • CommentTime16 Apr 2021
     
    @tebe: Twoja fala jest bardziej regularna - oryginalna ma ostry szczyt a bardziej wypłaszczoną dolinę :)
    • 21: CommentAuthormono
    • CommentTime16 Apr 2021 zmieniony
     
    Wersja w aśmie:
    font:
    :14 .byte %00000000
    .rept 7
    :2 .byte %11111111
    :5 .byte %00000000
    .endr
    .byte %00000000

    wave:
    :6 .byte $21+#
    .byte $27
    :6 .byte $26-#
    ?len = *-wave

    progr:
    lda #>font ;$20
    sta CHBAS
    sta ICBUFA+1
    asl ;$40
    sta ICBUFA
    lda #PUTBT
    sta ICCMD
    lda #wave.?len
    sta ICBUFL

    ?loop ldx #%11111111
    stx LOGMAP
    stx CRSINH
    inx ;$00
    stx ICBUFL+1
    stx LMARGN
    jsr JCIOMAIN
    bpl ?loop
    • 22:
       
      CommentAuthormiker
    • CommentTime17 Apr 2021
     
    Przypomina mi się np. intro Recycle. Tam była bardzo fajna fala i to na plotach. :)
    • 23: CommentAuthorgorgh
    • CommentTime17 Apr 2021
     
    mono: skoro powiedziałeś A w sizecodingu, to może powiesz i B i wystawisz intro na SV? :)