226

(14 odpowiedzi, napisanych Sprzęt - 8bit)

To urządzenie z „bvc *” to była stacja dysków, tylko nie pamiętam, czy do atarki czy komcia.

227

(1 odpowiedzi, napisanych Miejsca w sieci)

https://github.com/ChoccyHobNob/EightBit-Atari-Fonts

Brawo Grey!

229

(8 odpowiedzi, napisanych Programowanie - 8 bit)

Dokumentacja nie wspomina o optymalizacji 1, więc stawiam, że 2.

230

(8 odpowiedzi, napisanych Programowanie - 8 bit)

10 DIM A$(20)
20 OPEN #1,6,0,”D:*.*”:TRAP 60
30 INPUT #1,A$
40 ? A$:REM czy coś innego
50 GOTO 30
60 CLOSE #1

231

(13 odpowiedzi, napisanych Software, Gry - 8bit)

ZIP też ma sumę kontrolną, a można rozpakować na maluchu.

232

(38 odpowiedzi, napisanych Programowanie - 8 bit)

Popieram wersję na rozszerzenie pamięci.

233

(11 odpowiedzi, napisanych Programowanie - 8 bit)

Tako rzecze Eru

234

(23 odpowiedzi, napisanych Zloty)

Na pierwszy rzut oka myślałem, że L też jest w barwach narodowych C64, czyli brązowym i fioletowym, ale to przecież soczysta czerwień z GTIA!

235

(25 odpowiedzi, napisanych Miejsca w sieci)

https://www.radiozet.pl/Nauka-i-Technol … patentowac

236

(4 odpowiedzi, napisanych Emulacja - 8bit)

Nuda.

237

(10 odpowiedzi, napisanych Sprzęt - 8bit)

Do czego podłączasz i w jaki sposób?

238

(8 odpowiedzi, napisanych Programowanie - 8 bit)

Eee... Co to jest "dekompresja strumieniowa" ?
@mono: podrzuć mailem te źródła i przykładowe pliki, to zerknę, co da się zrobić.

Nitro napisał/a:

Exomizer to waga ciężka, najlepsza kompresja ale i bardzo wolna dekompresja

Kiedyś robiliśmy tu porównanie różnych standardów kompresji i wyszło, że Exomizer ma stopień kompresji zbliżony do DEFLATE, ale gorszy. Za to znacznie szybciej się dekompresuje.

239

(18 odpowiedzi, napisanych Emulacja - 8bit)

3.2.0 po uruchomieniu pokazuje Ci listę katalogów czy tylko Access Denied?

Lepiej wrzuć 4.0.0 alpha z postu wyżej. Wtedy klikając ikonę „otwórz” powinieneś widzieć ten katalog co w pececie po USB. Ewentualnie wewnątrz jest katalog Downloads i tam lądują pliki pobrane z przeglądarki i zalączników maili.

240

(23 odpowiedzi, napisanych Programowanie - 8 bit)

HIP na IRQ:

    ert <*!=$20
irq_gr9
    pha
    lda #$41
    sta ^1b
    sta $fffe
    inc ^2e
    pla
    rti
:irq_gr9+$21-* nop
    lsr $fffe
    ror ^1b
    inc ^2e
    rti

241

(23 odpowiedzi, napisanych Programowanie - 8 bit)

tebe napisał/a:

klawiatura nie generuje dodatkowych przerwań IRQ

"inc IRQEN" włącza przerwanie klawiatury. Naciśnięcie klawisza powoduje zapętlenie przerwań, bo nie jest potwierdzane obsłużenie przerwania klawiatury. Rozwiązaniem jest wyłączenie skanowania klawiatury, ale bez resetu POKEYa, który zatrzymałby dzielniki 64kHz i 15kHz i generatory zniekształceń: SKCTL=1.

242

(23 odpowiedzi, napisanych Programowanie - 8 bit)

Druga wersja:

  • Zamiast blokować przerwanie na dole ekranu, przestawiam timer, aby tyknął dopiero w następnej ramce. Timer trzeba teraz też ustawiać w VBLKI.

  • Opcja wykrycia i obsługi NTSC

  • Brak błędów związanych z wyrównaniem kodu

  • Brak DLI na górze - tryb może zaczynać się na samej górze ekranu

  • Opcjonalne DLI na dole - oszczędza cykli IRQ

243

(23 odpowiedzi, napisanych Programowanie - 8 bit)

Rozwiązanie TeBe ma kilka wad:

  • strata 78 cykli co 4 linie to gorszy wynik niż rozwiązanie oparte na DLI co 8 linii

  • użycie instrukcji 7-cyklowych w programie głównym w trakcie wyświetlania obrazu kaszani tryb

  • POKEY musi być skonfigurowany na 15kHz, co ogranicza autora ewentualnej muzyki, który i tak jest ograniczony przez liczbę dostępnych kanałów (może się przydać stereo)

  • resetowanie POKEYa w DLI kaszani ewentualną muzykę

Oto moje rozwiązanie:

  • procedura co 8 linii bez traconych cykli

  • z opcjonalną obsługą instrukcji 7-cyklowych

  • z konfigurowalnym wykorzystaniem POKEYa: wybór kanału dla przerwania, 15kHz lub para kanałów (wtedy pozostałe dwa kanały mogą grać dowolnie)

  • z jednorazowym resetowaniem POKEYa w przypadku 15kHz i tylko jednym zapisem STIMER w przypadku pary kanałów

Mam pod ręką tylko Altirrę, proszę o sprawdzenie na Atari.

O co chodzi z instrukcjami 7-cyklowymi:

Jak pisałem, mamy ograniczone okienko czasowe na zapisanie 13 do VSCROL. Przerwanie nie przerywa instrukcji, musi się ona wykonać w całości. Jeśli procesor wykonuje instrukcję 7-cyklową w momencie zgłoszenia przerwania, nie będzie ono w stanie wstrzelić się w okienko czasowe.
Możemy:
a. unikać tych instrukcji w programie głównym: są to BRK i INC/DEC/ASL/LSR/ROL/ROR abcd,X, plus wiele instrukcji nielegalnych i 65816
b. odpalać przerwanie wcześniej i synchronizować się z WSYNC (opcja irq9pp_LONGOP), oczywiście w ten sposób tracimy trochę cykli
Instrukcje nielegalne i 65816 mogą mieć nawet więcej, niż 7 cykli. Nie testowałem dla nich mojego rozwiązania z WSYNC.

244

(32 odpowiedzi, napisanych Fabryka - 8bit)

Nareszcie komentarz z jakimś konkretem: użytkownik próbuje otworzyć pliki CPT z lat 2001-2005 (stawiam, że Corel PhotoPaint na Windowsie XP). A więc to są komputery vintage!

245

(14 odpowiedzi, napisanych Programowanie - 8 bit)

Sikor napisał/a:

@Fox: dwukropek oznacza koniec linii, pod samym TB działa ok, ale to też sprawdzę

Nie w REM ani DATA. Zresztą widzisz, że w listingu kropka nie rozwija się do REM.

10 DIM A$(30)
20 READ A$:PRINT A$
30 DATA FF:.GREETZY DLA SIKORA
RUN
FF:.GREETZY DLA SIKORA

246

(14 odpowiedzi, napisanych Programowanie - 8 bit)

Czy $9C00 nie jest zajęte przez skompilowany program?
Xxl: tak, chodziło mi o taką prockę.
Sikor: gdzie chcesz wstawić org? Nie wołaj przez USR, to procedura przerwania a nie do wołania z BASICa.

247

(14 odpowiedzi, napisanych Programowanie - 8 bit)

TeBe ma rację, sama procedura jest poprawna. Aczkolwiek mogłaby być krótsza (wystarczy użyć samego akumulatora).
Podejrzane są natomiast:

  • brak inicjalizacji zmiennej ADDR

  • komentarze w DATA. Atari BASIC ich nie obsługuje (stawiam że TBXL też) - DATA przyjmuje wszystko do końca linii, więc READ to odczyta i być może skompilowany DEC ma z tym problem

248

(23 odpowiedzi, napisanych Programowanie - 8 bit)

tebe napisał/a:

próbowałem też "ożenić" IRQ z zaprezentowaną przez FOX-a metodą VSCROLL-a, tryb 9++, nie udało się, WSYNC ma niewątpliwą zaletę w tym względzie

IRQ powinno działać.

tebe napisał/a:

na podstawie kodu obsługi IRQ Phaerona http://atariage.com/forums/topic/244946 … try4041309

można dowiedzieć się że jest trick dotyczący wyłączenia/włączenia IRQ (działa bodaj tylko z licznikem #4)

dotychczasowe

  mva #0 IRQEN
  mva #4 IRQEN

można zastąpić zwięzłym

 inc IRQEN

Piękne. Ale czy wciskając klawisze nie generujesz dodatkowych IRQ?

249

(20 odpowiedzi, napisanych Sprzęt - 8bit)

laoo/ng napisał/a:

Konkretnie to myślę nad rozszerzeniem istniejącego trybu działania na inne tryby graficzne, które w praktyce byłoby swoistym downgradem możliwości, ale powinno dać zauważalnego kopniaka wydajnościowego.

A co za problem powiększyć przy pomocy blittera?

flashjazzcat napisał/a:

Amazing that so little software was written using the features available (despite lavish frameworks created by tebe, Drac030, etc), and yet the focus is on what's not working properly or how the device could do more.

Welcome to Poland! ;)

mono napisał/a:

- dx/dy z częścią ułamkową - obroty i skalowania

Skoro już marudzimy, to to jest rzecz, której najbardziej mi brakuje w tym sprzęcie.

250

(33 odpowiedzi, napisanych Software, Gry - 8bit)

Wow! Pozostaje napisać odtwarzacz MP3.