atarionline.pl Sztuczki programistyczne - 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: CommentAuthorgorgh
    • CommentTime8 Jul 2020
     
    Czołem koledzy,
    wczoraj przeglądałem na Atari demka i trafiłem na tę produkcję z około 1990 roku:
    ->link<-
    Niby prosta rzecz, ale zauważcie, że na środku ekranu w trybie hires jest... 8 duszków w linii!
    Mega fajnie jest to wymyślone.
    • 2:
       
      CommentAuthorKaz
    • CommentTime8 Jul 2020
     
    Może mnie pamięć myli, ale Bewesoft jeszcze to gdzieś wykorzystał.
    • 3:
       
      CommentAuthormaly_swd
    • CommentTime8 Jul 2020
     
    Ściganie plamki + podmiana danych dla duszków? Tak wiem, wszyscy to wiedzą ale w latach 90' to było coś.
    • 4: CommentAuthorgorgh
    • CommentTime8 Jul 2020
     
    jest jeszcze możliwość, że to podmiana trybów graficznych w locie
    • 5: CommentAuthorgorgh
    • CommentTime8 Jul 2020
     
    a nie, tak się chyba nie da
    • 6:
       
      CommentAuthorsun
    • CommentTime8 Jul 2020
     
    Altirra + F8 prawdę "Ci" powie :)
    • 7:
       
      CommentAuthormaly_swd
    • CommentTime8 Jul 2020
     
    Podmiana trybów raczej odpada, nie da się aż tak z hires na 4 ;)

    Ale ja to nie jestem aż taki kozak w tych zmianach trybów.
    • 8: CommentAuthortebe
    • CommentTime8 Jul 2020
     
    zrealizowane podobnie jak w HCM (Hard Color Map) prezentowany w Reharden (zastanawiające jest tylko powtórzenie litery E, tutaj można oszczędzić na zapisie rejestru GRAFP)

    ogólnie można obok siebie/przylegająco 7 duchów w podwójnej szerokości, każdy z innym kształtem, tylko na zmianę koloru nie ma czasu

    większe odstępy między duchami pozwolą wcisnąć zmianę rejestru koloru
    • 9: CommentAuthorgorgh
    • CommentTime8 Jul 2020
     
    ładne to, dzięki
    • 10:
       
      CommentAuthortdc
    • CommentTime8 Jul 2020
     
    Ponad miesiąc temu na naszym warsztacie z Action! pokazywałem jak zrobić 6 duszków w linii w samym Action! - zero asemblera;)))
    • 11: CommentAuthortebe
    • CommentTime8 Jul 2020
     
    gorgh pogłaszcz też tdc-a bo merda ogonkiem ;)
    • 12: CommentAuthornosty
    • CommentTime8 Jul 2020
     
    TDC ma rację, w Action! da się zrobić tylko 6 duszków w linii. Siódmy się już nie mieści ;)
    • 13: CommentAuthorgorgh
    • CommentTime8 Jul 2020
     
    nosty: красота!
    przy okazji podzielę się sposobem na szybkie generowanie obrazów kartridży, normalnie korzystałem z narzędzia bociana o nazwie CutAs i ręcznie łączyłem poszczególne 16kb bloki, ale okazało się, że za pomocą mads jest to dziecinnie proste:

    asm:

    opt f+h-
    ins 'b0.bin'
    ins 'bank1.bin'
    ins 'bank2.bin'
    ins 'bank3.bin'
    ins 'bank4.bin'
    ins 'bank5.bin'
    ins 'bank6.bin'
    ins 'bank7.bin'
    ins 'bank_level2.bin' ;'bank8.bin'
    ins 'bank_level3.bin' ;'bank9.bin'
    ins 'bank_level4.bin' ;'bank10.bin'
    ins 'bank11.bin'
    ins 'bank12.bin'
    ins 'bank13.bin'
    :18 ins 'bank12.bin'
    • 14:
       
      CommentAuthorjhusak
    • CommentTime8 Jul 2020 zmieniony
     
    @nosty, duchów da się zrobić 10 w linii :)
    @gorgh, w madsie można jeszcze fajniejsze cuda robić. Ja jak np. robię flasher do kartridża, to jego obraz w nim inkluduję po 8kb, a następnie jest skok init do obsługi tych 8 kilobajtów.

    ; ---------------------------------------
    ; blocks for every 8kb bank
    .rept 32, #
    .local block:1
    ;------------
    org BankNum ; miejsce w programie na numer banku do przelaczenia
    dta b(:1) ; kolejny numerek licznika rept
    ;------------
    org _SOURCE
    ins "car.bin",+:1*8192,8192
    ;------------
    org $2e2
    dta a(MAIN_PROCESS)
    ;------------
    .endl
    .endr
    ;------------
    org $2e2
    dta a(FINISH_PROCESS)