126

Eeee, taka "magiczna stała" to jest nic - zresztą, jak laoo wyjaśnił.

Prawdziwa magiczna stała to jest to: https://en.wikipedia.org/wiki/Fast_inverse_square_root

Czy możecie wyjaśnić, Stirlitz, dlaczego wasz służbowy adres stirlitz@rsha.gov.de ma aliasa justas@gru.su?
Nie czytam PM. Proszę używać e-mail.

127

w nawiązaniu do  https://atariage.com/forums/topic/29891 … nt=4917573

to ciekawe podejście wykorzystania znacznika C do tworzenia bajtów grafiki, nie przypominam sobie abym robił to w ten sposób

    org $2000

main    clc

    ldx #0

    lda #0

    cpx test
    ror @

    cpx test+1
    ror @

    cpx test+2
    ror @

    cpx test+3
    ror @

    cpx test+4
    ror @

    cpx test+5
    ror @

    cpx test+6
    ror @

    cpx test+7
    ror @

    nop
    brk

test    dta $1,$1,0,$1,$0,$1,$1,$0

    run main

w efekcie działania w/w programu otrzymamy tablicę TEST, w odwróconej kolejności z bitami ustawionymi przeciwnie

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

128

Apple IIGS (CPU 65816), opis realizacji efektów z dema "Kernkompetenz" by Ninjaforce

https://www.youtube.com/watch?v=glWIf0gfWSE

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

129

@tebe fajne video,
Ciekawostką jest to że opisany tam tryb "fill mode" jest też w Atari TT

Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org

130

jak działa ten "fill mode", podajemy pozycję początkową (X0, y) oraz końcową (X1, y) i sprzętowo wypełnia zadanym kolorem ?

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

131 Ostatnio edytowany przez Cyprian (2022-01-03 18:04:09)

Wypełnianie działa per jedna linia, nie zmienia zawartości pamięci RAM, tylko sygnał wysyłany do monitora.
Przykładowo, cała linia wstępnie jest wypełniona wartością 0.
Jeśli ustawiasz piksel  x:10 y:10 na kolor o wartości 12, piksel x:110 y:10 na kolor o wartości 5, to układ graficzny dla linii 10, pomiędzy x:10 a x:109 wyświetli linię koloru 12, a od x:110 do końca prawej ramki linię koloru 5.

Czyli z punktu widzenia procesora, rysowanie linii to postawienie dwóch punktów - na początku (w kolorze linii) i na końcu linii (w kolorze tła), oraz upewnienie się że RAM pomiędzy punktami jest wyzerowany.

Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org

132

Problem jest że na TT nie ma chyba ani jednego programu któy by to wykorzystywał. Słyszałem że swego czasu ray^tSCc próbował do tego podejść i przy tym poległ, a to przecież tęgi łep.

Widze 2 możliwości: albo to nie działa wcale, albo dostępna dokumentacja jest za słaba żeby był szanse na wykorzystanie tego.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

133 Ostatnio edytowany przez Cyprian (2022-01-03 19:07:44)

@Adam, ten tryb działa i jest tak prosty że nie trzeba żadnej dokumentacji. Nikt z niego jeszcze nie skorzystał bo na TT jest zaledwie parę dem.
Parę lat temu zrobiłem prosty przykład/demo dla zespołu Hatari. W sumie to też dodałem do Hatari obsługę tego trybu "smear"/"samplehold" oraz "hypermono"/"duochrome" (256 odcieni szarości). W międzyczasie Hatari zmieniło metodę renderowania danych, no i muszę te tryby do niej ponownie dostosować: https://hatari.tuxfamily.org/doc/authors.txt

W sumie to obsługuje się go w niemalże identyczny sposób co blitterowe wektory na Amidze - 1) czyszczenie ekranu; 2) rysowanie linii; 3) wypełnianie,  ale z pominięciem punktu 3).

Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org

134

w sumie to na XE/XL taki "fill mode" też istnieje, przełączamy pociski na szerokość FULL, i ustawiając pozycję poziomą X stawiamy linię o długości 0..X w kolorze wybranego pocisku, teraz kolejny pocisk na pozycję X-30 w kolorze tła i mamy odcinek [x-30,x]

Phareon popełnił przykładowy efekt który z tego korzysta

Post's attachments

pm_full_width.7z 9.93 kb, liczba pobrań: 11 (od 2022-01-03) 

Tylko zalogowani mogą pobierać załączniki.
*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

135

@tebe ładnie to wygląda i jest szybkie

Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org

136

@Cyprian: chętnie dodamy kategorię TT Demo Compo na SillyVenture :)

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

137

@Adam, jest szansa ale znając moje tempo to na SV 44 :)

Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org

138 Ostatnio edytowany przez tebe (2022-01-08 21:56:11)

Dark Bit Factory, forum poświęcone efektom z dem

http://www.dbfinteractive.com/forum/ind … board=16.0

Twister 3D Scroll w Scratchu :) https://scratch.mit.edu/projects/173280022/editor/

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

139 Ostatnio edytowany przez swiety (2022-02-13 00:33:18)

W odpowiedzi do Laoo
często zapisuję ułamki właśnie jako n/256 i zamiast dzielić mnożę przez n/256 ;) to ma zaletę że starszy bajt po mnożeniu stanowi wartość całkowitą a młodszy ułamek , w moim ECU zbudowanym na 65c816 mnożę x*y/100 - jako że jedna z wartości jest w % więc dla zwiększenia precyzji używam (u/256*x+y*x)/100 , potem resztę z mnożenia n/100 zamieniam na n/256.
Po przemnożeniu x*u/256 - starszy bajt jest wartością całkowitą , młodszy częścią ułamkową. Na podobnej zasadzie odtwarzam sample:

lda ulamekCnt
adc ulamek
sta ulamekCnt

lda pozycja_fali
adc step
sta pozycja_fali

140

https://github.com/RobertTroughton/C64D … icReleases

co jakiś czas dodawane są nowe pozycje dem z C64

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

141

Checkerboard zoom (zoomowana szachownica)

https://www.pouet.net/prod.php?which=74681#c818114

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C