1

(111 odpowiedzi, napisanych Programowanie - 8 bit)

Ja tam używam nagminnie :)

mads 2.1.3
Source: f.asm
     1                     opt h-
     2                     org 0
     3                 .rept 2
     4                 ?Y = #*$10
     5                 .REPT 2
     6                     DTA ?Y + #
     7                 .ENDR
     8                 .ENDR
     8                 .endr
Source: REPT
     4 = 0000            ?Y = #*$10
     4                 .endr
Source: REPT
     6 0000 00                DTA ?Y + #
     6 0001 01                DTA ?Y + #
Source: f.asm
     4 = 0010            ?Y = #*$10
     4                 .endr
Source: REPT
     6 0002 10                DTA ?Y + #
     6 0003 11                DTA ?Y + #
Source: f.asm
Source: f.asm
     9

2

(111 odpowiedzi, napisanych Programowanie - 8 bit)

Hej,

Dając dwa .rept do jednego okalającego - drugie z nich po prostu wykonuje poprzednie jeszcze raz. Trochę się nakląłem budując dlist :)

mads 2.1.3
Source: f.asm
     1                     opt h-
     2                     org 0
     3                 .rept 1
     4                 .REPT 2
     5                     DTA #
     6                 .ENDR
     7                 .REPT 0
     8                     TUTAJ MOZE BYC COKOLWIEK BO I TAK PONOWI REPT WYZEJ
     9                 .ENDR
    10                 .ENDR
    10                 .endr
Source: REPT
    10                 .endr
Source: REPT
     5 0000 00                DTA #
     5 0001 01                DTA #
Source: f.asm
     5                 .endr
Source: REPT
     5 0002 00                DTA #
     5 0003 01                DTA #
Source: f.asm
Source: f.asm
    11

3

(11 odpowiedzi, napisanych Fabryka - 8bit)

mono napisał/a:

Odnośnie dźwięku: Evie ma taki feature, że jak się zapisuje $D604/$D704 to bajt trafia od razu do $D600 i $D601 ($D700+$D701).

To jest tak oczywiste jak teraz to czytam, że mi się zamarzyło aby oryginalne simple stereo dla Atari miało:
$D20x - mono, zapisuje w lewy i prawy (pełna zgodność w dół do mono)
$D22x - stereo, lewy kanal
$D23x - stereo, prawy kanal
aż chyba swoje tak przerobie :) (i wszystkie twoje odtwarzarki.... i gry... tak tak, żartuje)

mono napisał/a:

Można też generować 8-bit PDM na POKEY-u przez zapis $D201 i $D205 (oczywiście po uprzednim _jednokrotnym_ skonfigurowaniu kanałów).

Dokładnie tak to działa, LDA hashi, STA $D205, LDA hashi, STA $D201, dwa razy w linii aby wycisnąć 31k (stereo 15k oczywiście jest tak samo prosto, jest to rozszerzenie formatu HAI którego pewnie nigdy nie zrobię(takich głupot mam spory pęczek) )

A ma Evie rozmnażarkę kanałów pod jakimś adresem POKEYowym? zapisałbym w inne $D2y1 żeby grało na starym pokey-u i na Evie. No i wiedziałbym na jaki adres dolutować rozmnażarkę do simple stereo ;)

4

(11 odpowiedzi, napisanych Fabryka - 8bit)

mono napisał/a:

@Yosh: A co myślałbyś o takim fjuczerze? ....

Tia... da się, wiedziałem że o to zaraz Laoo mnie spyta i będzie wiercił dziury w brzuchu (czasem z tych dziur wypadają fajne rzeczy:P ), więc pozostaje napisać mi to samo Tobie:

TEORETYCZNIE - da się przepleść kod razem z danym dla Antica, i mieć każdą klatkę video rastaconventerem zrobioną (muhaha), niby się da. I nawet zostaje trochę czarnego ekranu, żeby mieć czas na pędzenie machinki karty SD.
Tylko, że to jest uber rzeźbienie w xmedze (które lubię), ale mam inne priorytety :(

Teraz jest fajnie, xmega ma praktycznie tyle cykli ile potrzebuje na wystawienie danej i pędzenie automatu karty SD, zostaje trochę cykli żeby nie było to bardzo paskudne i miało jakikolwiek zamysł :) bo dana jest potrzebna co drugi bajt (Antic), czasem od razu (wpleciony dźwięk), robić to bajt w bajt - mega rzeźbienie :)

Zresztą, i tak potrzebuje karta SD oddechu (jak zmienia strone, albo wystawia CRC to muszę nad tym przeskoczyć) wiec nie jest to aż tak trywialne. Dlatego wracając z SV pocieszałem się że i tak każda klatka rastaconverterem była by inna (migało by w cholerę i bardzo pociesznie).

Łatwiej jest więc pisać dedykowane playery po stronie 6502 z dedykowaną strumieniowaczką po stronie xmegi.
Tym bardziej, że mono pdm 8bit 31k to jest w każdej lini (nie liczac antica) LDA STA * 4 (i to juz jest duzo, zostaja naprawde farfocle)

Ładowarka xex, czy namiastka dosa - mimo że bardziej skomplikowane - działają wolniej niż video, bo część wystawianych danych to jest "LDA" "STA" "JMP" - tego z karty nie trzeba czytać.

Co do drugiej części - najłatwiej a też dość przaśne po przejściu na carta będzie wmapowanie PMG w $8000 i ciągniecie tych danych prosto z carta, wtedy 6502 mogło by przesuwać HPOSy i coś się podkoloruje :)

5

(11 odpowiedzi, napisanych Fabryka - 8bit)

tebe napisał/a:

a można zreplikować duchy w linii :) ładując non-stop pod adresy HPOSP0..3 / GRAFP0..3 ?

Nie :)

Niektóre założenia podjąłem dość arbitralnie ("bo tak"). Jednym z nich jest zerowa ingerencja w samą Atarynę (nie żebym w drugim Atari nie miał 1MB, streo, spart itd...).

Co powoduje, że zewnętrzny cartridge zawsze jest slavem. Antic ustawić w przestrzeń cartridga - żaden problem, mamy video (dzięki wycyklowaniu po stronie xmegi). Dla trybu wide jak się od tych 114 cyklów w linii po stronie atari odejmie wszystko zostają grosze. Wystarczają na przepisywanie z pamięci carta w pokeya aby grać PDMa (obraz i video jest przeplecione). Line puste, mają przeplecioną logikę gry/odtwarzacza z dźwiękiem (każda linia musi zagrać 2 sample).

Na multipleksowanie nie ma siły, teoretycznie można by w pustych liniach mieć dane dla bufora duszków (ręcznie przepisywane z carta do pamięci), to można by coś podkolorować.

W tych demach natomiast korzystam z tego co opisał Rybags/Pavros, ręcznie robię vsync i dzięki temu poniżej obrazu antica, na duszkach jest status gry / licznik klatek (nie tracę powierzchni video)

Muszę wywalić ECI i biorę się za płytki bardziej "docelowe", jak mi żona da czas po SV:)

6

(11 odpowiedzi, napisanych Fabryka - 8bit)

Zabawka z Silly Venture 2018.

Hashi to eksperymentalny cartridge do atari 8-bit, oparty o EPM3064 i ATxmega192D3.

Doso podobne funkcje:
- Ładowanie xex z FAT32 około 200KB/s (więcej przy wyłączonym Antic).
- wsparcie dla CIO i SIO (SIO przez ECI, ale zamierzam to odpiłować)
https://www.youtube.com/watch?v=DMlDcaFc_Bk

Funkcje strumieniowego interfejsu:
- Wideo: 352x239 (gr8) 50 klatek na sekundę
- Audio: 31 kHz mono 8-bitowe audio PDM przez POKEY
- Format HAI obsługuje metadane ala RIFF
- wszystko zarządzane z Atari
https://www.youtube.com/watch?v=NTXMqTindRA
(tak, to jest interaktywne i grywalne - nie wszyscy na SV zauważyli, co bardzo mnie cieszy:P)

I oczywiście niektóre klasyki:
https://youtu.be/kXNTymTJfSk?t=124

Pamiętam, kiedy pierwszy raz zobaczyłem SIO2SD, od razu chciałem je podłączyć po PBI
Historia zatoczyła koło: http://www.atari.org.pl/forum/viewtopic.php?id=5522.
Fun fakt, 1/100 z poświęconego na to czasu to odtwarzarka video na sv (jak nie mniej)

7

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

I nagle wszystko się stało jasne... brakowało mi jak system wie, czy to D czy co innego.... a to jest taki wał, że to już robi BIOS newdeva :P

Wystarczy całość zapiąć na PDIOR i reagować na PDVREG. Ok dzięki wielkie.

a SIOINT tak naprawdę 'nie sprawdza' czy chodzi o nowe urządzenie :) po prostu jeżeli jakieś 'widzi' - patrząc na PDVMSK to  je woła i jak one zwróci C=1 to znaczy że obsłużylo a jak nie to kolejne... a jak nie to SIO....

Dzięki! (wiem, że zacytowałem http://atariki.krap.pl/index.php/ROM_PBI, ale jak coś pokiełbasiłem to zmyjecie mi głowę)

Witam,

Nurtuje mnie jedno pytanie, które powstało po przeczytaniu

http://atariki.krap.pl/index.php/ROM_PBI
"Urządzenie znakowe CIO powinno ponadto wpisać się do tabeli HATABS, najlepiej użyć do tego procedury NEWDEVC $E486. Jako adres tabeli adresowej sterownika trzeba przy tym podać adres $E48F."

Czy to jest metoda dzięki której działa bootowanie z twardych dysków, itd? Ponieważ wykrywanie NEWDEV jest przed bootowaniem to takie KMK/JŻ IDE wciska swój handler do HATABS i całość startuje ładnie ?

A co ma do tego resident disk handler? Czy on jest świadom NEWDEV? - nie mogę doszukać się opisu ew listingu jego.. Czy jakaś stara paskudna aplikacjia używająca resident disk handler skorzysta z NEWDEV?

Kurka, tyle pytań - przepraszam - ale sumuje się to do "Czy istnieje inny dostęp do dysku (poza CIO) na który NEWDEV pomaga - w stosunku do trochę lewych rozwiązań ala MyIDE"

Tak, dzięki.

Ja też się pisze na 4, umówiłem się z laoo/ng, aby przyszły razem z jego (co by prościej wysłać)

czyli - laoo/ng bierze 6, a ja się z nim rozliczę.

11

(28 odpowiedzi, napisanych Programowanie - 8 bit)

tebe: Rozumiem, że def7z.exe wykonuje skrypt eru pod windowsem? (tak pytam, bo nie wiem czy beszczelnie używać tego co napisał eru czy męczyć Ciebie o składnie polecenia której użyłes w tym generowanym bat)

Witam,

Dręczy mnie pytanie - jak w temacie:

Po jakim czasie Atari (zwykłe najprostsze 65XE, jestem nowy tutaj :) nie mam modów itd) czyta dane z D0-D7 po wystawieniu adresu na liniach adresowych ?
Lub parafrazując "Ile mam czasu po pojawieniu sie adresu na wystawienie danych na porcie cartridge'a ? (jezeli chciałbym udostepnić coś dla ataryny ew ile mam czasu kiedy atari chciałoby coś  zapisać)"

20 lat temu mnie to mało interesowało - ale teraz to całkiem inna sprawa :) Przeszukałem troche google i forum i http://www.atariarchives.org/ i nic nie moge wydumać. A może ktoś poleci jakieś konkretne źródła na ten temat?
(np jaki maja sens linie FI/2 i RW)

Oczywiscie interesuje mnie wykonywanie kodu z zewnetrzej pamieci - bo pewnie moge miec dowolna ilosc czasu w zalozeniu, ze w swoim kodzie atarowym bede baaaaaaardzo dlugooo robil LDA w pętelce - ale nie o to mi chodzi

Mam nadzieje, ze to odpowiedni dział forum i że mniej więcej się wyraziłem

Dzięki