atarionline.pl RAM 1 MB i coś jeszcze ;) - 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: CommentAuthor8bit
    • CommentTime10 Feb 2014
     
    Witam wszystkich, jestem nowy na tym forum.
    Jestem fanem informatyki retro, niekoniecznie jakoś związany z konkretną marka i czasem lubię sobie pobudować jakieś urządzenia. Ale do rzeczy. Zostałem uprzedzony że tu rozmawiamy tylko o 8 bitowym ATARI, no ale będę musiał posłużyć się swoim C64 bo akurat na nim mogę zaprezentować swoje działające usprawnienie , mam nadzieję że przeczytacie to do końca i może jednak mnie nie zbanujecie ;)
    Tu jest coś co zrobiłem :
    ->link<-

    A teraz do rzeczy przejrzałem dokumentację ATARI i jestem przekonany że można coś takiego zbudować na ten komputer.
    Zapytam wprost,bez zbędnego "owijania w bawełnę" :
    1.Czy znalazły by się osoby chcące popracować nad rozwojem/ dostosowaniem oprogramowania dla ATARI ?
    2.I najważniejsze czy byliby chętni na ewentualne nabycie
    takiego rozszerzenia ?
    Bo przyznam się szczerze że robienie czegoś" do szuflady" mija się z celem.
    Wstępny koszt to ok. 50 zł (bez montażu).
    No i pozdrawiam wszystkich użytkowników ATARI
    • 2:
       
      CommentAuthorMaW
    • CommentTime10 Feb 2014 zmieniony
     
    Poczytaj o rozszerzeniach RAMBO i COMPY.

    //EDIT: no i bym zapomniał o najważniejszym: Ultimate1MB :D
    • 3: CommentAuthor8bit
    • CommentTime10 Feb 2014 zmieniony
     
    Porównałem szczególnie cenę ;)
    Z tego co się zorientowałem większość jeśli nie wszystkie rozszerzenia dają ileś (zależnie od ilości pamięci) tam banków RAM po 16 kB.
    Moja koncepcja przełącza od razu 64 kB dając do dyspozycji w przypadku 1MB (w sumie to można dać więcej ) nie 64 Banki po 16kB , tylko 16 wirtualnych komputerów do dyspozycji każdy ze swoją stroną zerową i stosem , wspólne są tylko I/O. Coś a la system virtual86 na 80386.
    Właściwie mam już ukończony system (niestety dla c64 ,na filmiku było nawet go widać)
    Co ciekawe te rozszerzenia spokojnie powinny się uzupełniać , tworząc naprawdę mocną maszynę
    • 4: CommentAuthordarque
    • CommentTime10 Feb 2014 zmieniony
     
    Ciekawy pomysł ale aby Ci się udało musiałbyś zapewnić kompatybilność z dostępnymi rozwiązaniami na Atari.
    • 5: CommentAuthor0xF
    • CommentTime10 Feb 2014
     
    Tak, na Atari jest standard rozszerzeń pamięci bankami po 16 KB. I wielu użytkowników ma już w tym standardzie 1 MB. I jest nieco oprogramowania, które z tego korzysta.

    Poczytaj jeszcze o 65816 i jego pamięci liniowej - ten procesor ma, operując nazewnictwem x86, "rejestry segmentowe" wybierające banki 64 KB, niezależnie dla kodu i danych. Wymiana procesora jest mniej popularna od rozszerzenia pamięci.

    W 1995 napisałem mały programik, który na standardowym rozszerzeniu podpinał się pod Shift+Reset i zamieniał zawartość podstawowych 64 KB z 64 KB w pamięci rozszerzonej. Miałem więc asembler+edytor, a po Shift+Reset miałem całą pamięć dla swojego programu. Kolejny Shift+Reset i wracałem do edytora. Takie przepisanie trwało może 2 sekundy.
    • 6:
       
      CommentAuthorlarek
    • CommentTime10 Feb 2014 zmieniony
     

    8bit:

    Porównałem szczególnie cenę ;)

    Trzeba wziąć pod uwagę, że Ultimate 1MB to nie tylko większy RAM. To SpartaDOS X, zegar z podtrzymaniem bateryjnym, 4 systemy i coś tam jeszcze... Poza tym u Lotharka mamy jeszcze mocne wsparcie posprzedażowe.
    Sprzęt wart ceny.
    • 7: CommentAuthorpin
    • CommentTime10 Feb 2014
     
    ... rozwiązanie z bankami 64k trochę bez sensu, szczególnie mając na względzie znaczną ilość programów dla rambo/cs.


    Na komodzie jak sądzę sytuacja w tym względzie wygląda praktycznie całkowicie odwrotnie ;)

    Pytanie tak z ciekawości. Program działa w ramach jednego bloku 64k. Jak wygląda możliwość przerzucenia danych do innego?
    • 8: CommentAuthor8bit
    • CommentTime10 Feb 2014
     
    1. nie widzę żadnego powodu aby to rozwiązanie w jakiś sposób kolidowało z innymi rozszerzeniami, Z tego co się zorientowałem to chyba wszystkie one działają na Bloku pamięci rozszerzonej, moje działa na głównej, więc mogłyby znajdować się w jednym komputerze.
    2.Dane z jednego Bloku do drugiego mogą być przerzucane poprzez bufor 512 B umiejscowiony w wolnym obszarze I/O.
    3.w sumie nawet rzadko potrzeba przerzucać duże ilości danych, wystarczy załadować do banków potrzebne programy przejść do potrzebnego np. graficznego - wrócić do systemu i gotowy rysunek przerzucić do innego programu do dalszej obróbki.
    4. dodatkowo istniej możliwość uruchomienia programów w multitaskingu do pracy w którym dla wielu programów wystarczy zapamiętać jedynie na ich stosie rejestry procesora .
    Ps. jak tu się zaznacza tekst do odpowiedzi ?
    • 9:
       
      CommentAuthorMaW
    • CommentTime11 Feb 2014
     
    copy-paste + [quo te] [/quo te]
    • 10: CommentAuthor8bit
    • CommentTime11 Feb 2014
     
    Maw thx
    To wstępnie rejestry wyglądałyby tak:
    $d400 - rejestr banku bity 0..3
    $D600- $D7ff Pamięć na potrzeby systemu , czyli procedury przełączania , bufor wymiany itd
    • 11: CommentAuthorpin
    • CommentTime11 Feb 2014
     
    $D600- $D7ff Pamięć na potrzeby systemu , czyli procedury przełączania , bufor wymiany itd


    Nie będzie to kolidować z VBXE i Covoxem? ;)
    • 12: CommentAuthor8bit
    • CommentTime11 Feb 2014 zmieniony
     
    Nie będzie to kolidować z VBXE i Covoxem?




    Można jeszcze zastosować d100 na port i d400-d4ff na RAM
    • 13: CommentAuthorbob_er
    • CommentTime11 Feb 2014
     
    Na $d4xx to Antic zdaje się siedzi. I chyba nikt na maluchu nie spodziewa się na tej stronie niczego innego...
    Osobiście zastanawiam się jak to generalnie ma działać. Czy 16 wirtualnych maszyn? Piszesz, że tak, ale wtedy jest mała rozpierducha z rejestrami sprzętowymi (dajmy na to: maszyna v0 ma dlist na $2000, maszyna v1 na $8000, itd... - jak to sensownie ogarnąć?). Z drugiej strony - mam 16 razy bootować maszynę? Ciekawa jest koncepcja, o której wspominasz na elektrodzie - że CPU i VIC jadą z różnych banków (imho to największe barbarzyństwo na 130tce, że ten bajer został spacyfikowany). Z Anticiem też tak chcesz?
    • 14: CommentAuthorxxl
    • CommentTime11 Feb 2014
     
    > (imho to największe barbarzyństwo na 130tce, że ten bajer został spacyfikowany)

    no wlasnie, Grzybson swoimi regulaminami na konkursy stara sie jak moze zeby nie dopuscic prac, ktore korzystaja z tej zalety atari 130 xe.
    • 15: CommentAuthorbob_er
    • CommentTime11 Feb 2014
     
    off-topic: a ja się zastanawiam, czy nie machnąć czegoś większego na malucha specjalnie na 130XE. Bajer ten o tyle mnie kręci, że mamy za free dwubuforowanie (czyli mniej kodu).
    • 16: CommentAuthor8bit
    • CommentTime11 Feb 2014
     
    Czy 16 wirtualnych maszyn? Piszesz, że tak, ale wtedy jest mała rozpierducha z rejestrami sprzętowymi (dajmy na to: maszyna v0 ma dlist na $2000, maszyna v1 na $8000, itd... - jak to sensownie ogarnąć?). Z drugiej strony - mam 16 razy bootować maszynę? Ciekawa jest koncepcja, o której wspominasz na elektrodzie - że CPU i VIC jadą z różnych banków (imho to największe barbarzyństwo na 130tce, że ten bajer został spacyfikowany). Z Anticiem też tak chcesz?

    Tak 16 wirtualnych maszyn , choć ostatnio robię system że będzie ich tylko 15,bo zerową zostawiam na system + obsługę HDD( w przyszłości) fajnie bo sterowniki na szybko mogą być nawet w BASIC-u no i kończę FREEZER-a
    Rozdzielenie CPU i ANTIC-a to nawet obowiązek ;)Dięki temu mogę np. robić animację pełnoekranową z animowanymi spritami , czy np interlace np tak
    clc
    lda BANKVIC
    add #10
    sta $d500
    sta BANKVIC
    Zostaje jeszcze sporo czasu na program i RAM-u bo tracę tylko 8kB , a mam 16 ekranów ;)
    Co do bootowania to robiłem też tak że program ładowany do jednego Banku i całe 64 kB kopiowane do innych po inicjalizacji wskaźnika stosu wszystko działało .
    No i dzięki przełączaniu mogę podejrzeć z systemu niejako okno zadania w innym banku
    • 17: CommentAuthor8bit
    • CommentTime11 Feb 2014 zmieniony
     
    No i najprostsze wykorzystanie ze wszystkimi programami , jako taki "ramdysk" bez żadnego programu do obsługi .Potrzebne programy są od razu dostępne w bankach więc niczego nie potrzebuje przerzucać.
    • 18: CommentAuthorpin
    • CommentTime11 Feb 2014 zmieniony
     

    8bit:

    + obsługę HDD( w przyszłości)


    To akurat od dawien dawna jest i działa wyśmienicie ;)

    Co do reszty, to szczerze wątpię że takie rozwiązanie się przyjmie, ale życzę powodzenia :)

    XXL:

    > (imho to największe barbarzyństwo na 130tce, że ten bajer został spacyfikowany)

    no wlasnie, Grzybson swoimi regulaminami na konkursy stara sie jak moze zeby nie dopuscic prac, ktore korzystaja z tej zalety atari 130 xe.


    Zostało to "spacyfikowane" najpóźniej w okolicach 1997 roku (w regulaminach zlotów) ze względu na zgodność pomiędzy rambo a compyshop. Jak na owe czasy dobre rozwiązanie, lecz jak na dziś dzień średnio ma to sens, bo i tak większość dopałek i wszystkie nowe rozszerzenia pamięci (np. U1MB) mają raczej dwa tryby pracy ;) 576/1088k ram.

    Bob_er:

    Z drugiej strony - mam 16 razy bootować maszynę?


    No taka właściwość w zasadzie wyklucza możliwość sensownego używania takiego rozszerzenia.
    • 19: CommentAuthor8bit
    • CommentTime11 Feb 2014 zmieniony
     
    Z drugiej strony - mam 16 razy bootować maszynę?


    Niema takiej potrzeby
    + obsługę HDD( w przyszłości)

    Zapomniałem dodać że z DMA do DRAM w trybie FPM , coś a la REU tyle że z HDD lub FLash cart
    • 20:
       
      CommentAuthorjhusak
    • CommentTime11 Feb 2014
     
    No no. Jak to sensownie wszystko połączysz, to będzie taki świeży powiew (huragan) dla tej platformy.

    Bo oczywista oczywistość to konflikty z tym, co już zostało zrobione i próba ich usunięcia.
    • 21: CommentAuthorpin
    • CommentTime12 Feb 2014
     
    ... czyli usunięcia ostatnich 20 kilku lat pracy elektroników? ;)
    • 22: CommentAuthorbob_er
    • CommentTime12 Feb 2014
     
    Spoko - przed nami kolejne 20 lat...
    Jeśli to przywróci Anticowi niezależny (od CPU) dostęp do EXT ramu, to ja się piszę :).
    • 23: CommentAuthormono
    • CommentTime12 Feb 2014 zmieniony
     
    @8bit: przyjrzyj się koncepcji newdevices w Atari. To pozwala bezkonfliktowo dzielić z innymi urządzeniami stronę d6 i d7 oraz rom nowego urządzenia w obszarze $d800..$dfff. Poza tym automatycznie dostajesz obsługę przerwania od nowego urządzenia w systemie (VPIRQ).

    Edit: W ten sposób są tworzone nie tylko zewnętrzne rozszerzenia do Atari, ale dodatki które seryjnie były już wbudowywane do środka komputera przez samo Atari (zobacz modele 1400XL, 1450XLD i syntezator mowy + modem).
    • 24: CommentAuthor8bit
    • CommentTime12 Feb 2014 zmieniony
     
    a taka konfiguracja :
    D500-d5ff RAM zostaje tylko $FF bajtów dla oprogramowania ,w tylu zmieściłem się dla systemu w c64 (tyle że z tego korzystają carty więc raczej odpada )

    z tego co wyczytąłem to VBXE można podłączyć albo na d6xx albo d7xx
    No i rejestr połączyć z covoxem na d604 (covox korzysta z adresów d600 d603
    ->link<-

    Już wiem jak rozdzielić ANTIC-a od CPU.

    @mono: możesz podesłać link do dokumentacji i schematów
    A co jest ze stroną D1xx ?
    Można ją wykorzystać bo widzę że w 130xe jest jedynie wyprowadzona jedynie na zewnątrz , a w innych nie jest nawet podłączona ?

    EDIT:// Można przyjąć że 4 starsze bity w rejestrze określają bank dla ANTIC , a 4 młodsze dla CPU
    • 25: CommentAuthor8bit
    • CommentTime12 Feb 2014
     
    Ostateczna konfiguracja:
    d100-d1ff RAM
    d604 I/O
    Myślę że powinna zadowolić większość ;)
    • 26: CommentAuthor0xF
    • CommentTime12 Feb 2014
     
    d100-d1ff RAM

    To jest obszar dla Nowych Urządzeń. Np. ja mam tam Karin Maxi.
    • 27: CommentAuthormono
    • CommentTime12 Feb 2014
     
    @8it: Przeszukaj atariage.com np. ->link<-
    • 28: CommentAuthor8bit
    • CommentTime12 Feb 2014
     
    @mono: dzięki,
    To może i/o podzielić na części po 128B wtedy każdy układ będzie miał swoje miejsce , a ja w każdej(no może poza cartem , albo p[odpowiedzcie czy coś jeszcze np. ANTIC) zabiorę górną połowę. Tylko że w tedy procedury będą porozrzucane .
    A jak jest z Anticiem ?
    Siedzi na swoich adresach czy też się przekręca co 16 ?
    • 29: CommentAuthorbob_er
    • CommentTime12 Feb 2014
     
    Wszystkie układy się przekręcają. Sumarycznie każdy układ zajmuje całą stronę.
    Tak się stereo używa - że jego rejestry to drugie przekręcenie rejestrów Pokeya.

    Acha - i taka uwaga - wszystkich i tak nie zadowolisz, więc musisz coś wybrać i światu przedstawić :).
    • 30: CommentAuthor0xF
    • CommentTime12 Feb 2014
     
    Widziałem kod, który używał "klonowanych" adresów rejestrów sprzętowych. Chodziło o zaciemnienie ("obfuskację") kodu. A widziałem to, jeśli mnie pamięć nie myli, w grze Bounty Bob Strikes Back.
    • 31: CommentAuthor8bit
    • CommentTime13 Feb 2014 zmieniony
     
    Widziałem kod, który używał "klonowanych" adresów rejestrów sprzętowych.

    Są dwa rozwiązania
    1. najlepsze - przerobić grę ;)
    2. będzie przełącznik rozłączający rozszerzenie .
    @mono :
    Przyjrzałem się schematowi 1400xl ,tam na stronach d600-d7ff jest na stałe RAM na potrzeby PBI. Bezkonfliktowość polega na dzieleniu d6xx po 32B na urządzenie. A d7xx jest zarezerwowana przez ATARI na przyszłość (czyżby na potrzeby podobnego rozszerzenia ;))
    Czyli jak wpakuje tam RAM to zrobi się z tego prawie 1400xl ;)
    Mam już parę pomysłów jak to wykorzystać w systemie.
    Ale zostawię to na później, teraz zajmę się projektem.
    • 32: CommentAuthormono
    • CommentTime13 Feb 2014 zmieniony
     
    Ogólnie w serii XL/XE D6 i D7 nie jest podpięty (tylko 1400XL ma tam RAM, ale to jest prototyp nigdy nie produkowany oidp). Ciężko zmieścić nowe rejestry w obszarze I/O, ale można próbować rezerwować jakiś pojedynczy rejestr. Trzeba jednak uważać, żeby z czymś nie kolidowało i włączać swój kawałek pamięci z rejestrami sterującymi w jakiś obszar np. tak, jak cartridge ($8000..$9FFF lub $A000..$BFFF), lub jak to robią nowe urządzenia - w $D800..$DFFF czy oidp na D1.
    Myślę, że warto żebyś porozmawiał z jakimś dobrym konstruktorem urządzeń znającym sprzęt Atari np. Candle, Electron, Pasiu, Lotharek bo naprowadzi Cię on na właściwy tor i Twoje urządzenie będzie współpracowało, a nie przeszkadzało (a to chyba ważne, skoro nie lubisz robić do szuflady :]).
    • 33: CommentAuthor8bit
    • CommentTime14 Feb 2014 zmieniony
     
    Układ zaprojektowany, czas złożyć i uruchomić prototyp.
    W związku z tym potrzebuję jakiegoś kandydata na nr.1.
    szczególnie nie będę wybrzydzał i zadowolę się nawet samą płytą elektroniki i klawiaturą (byle były sprawne).
    W zamian najchętniej oddam coś z 30 letniej "kolekcji" z serwisu do PC. W sumie nazbierało się tego od XT (a nawet i starszych) po Pentium 4 , więc jak ktoś czegoś potrzebuje to pytać, przemyślę każdą propozycję.
    A i pewnie niedługo przydałby się ktoś do testów
    (fajnie jakby chciał poświęcić trochę czasu na pomoc przy programowaniu) , najlepiej z okolic Wrocławia , ale upierać się nie będę.
    Napiszę jeszcze w kupię/wymienię
    • 34:
       
      CommentAuthorMaW
    • CommentTime14 Feb 2014
     
    zabez_USUN_TO_@_USUN_TO_piecz sobie maila przed botami
    • 35: CommentAuthor8bit
    • CommentTime29 Jul 2014
     
    Podlinkuję, a co tam ;)
    ->link<-
    Nie aby wszczynać jakąś nową wojnę, tylko może kogoś "natchnie" i zdecyduje się pociągnąć projekt na atari, ja ze swojej strony w miarę możliwości chętnie pomogę w oprogramowaniu, ale sam nie dam rady jednocześnie ciągnąć go na dwie platformy.
    Pozdrawiam wszystkich.