Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Computer ControlsComputer Controls
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Commodore c64 rozbudowa pamięci operacyjnej do 16 MB.

Grzegorz77 08 Aug 2015 22:30 33795 58
  • #31
    Grzegorz77
    Level 25  
    jackfinch wrote:
    A gdzie się podział u ciebie SID, bo nie widać go na płycie ?

    A przez kilka dni leżakował w szafie.
    Ostatnio rozpracowuję nowy projekt i trochę lutownice trzeba było poużywać, więc wszystko co cenne powyciągałem z płyty :D
    No ale dziś już wrócił na swoje miejsce, tak jak i płyta do obudowy.
    [EDIT]
    Pozdrowienia dla komentujących i dzięki za dużo +
    Zauważyłem że temat stał się popularny nie tylko na elektrodzie ale i wykopie.
  • Computer ControlsComputer Controls
  • #32
    Ronin64
    Level 35  
    11111olo wrote:
    Projekt z założenia fajny, niestety oznacza mocną ingerencję w sprzęt (i to lutownicą). Gdybyś dodał to jako cartridge to by było dla wszystkich a tak to tylko ciekawostka.


    Dzięki temu żaden cwaniak nie ukradnie tego pomysłu i nie będzie sprzedawał jako swój pomysł.
  • Computer ControlsComputer Controls
  • #33
    11111olo
    Level 42  
    Życzę sukcesu w zrobieniu czegoś więcej na tym hardware. Musi kolega zdecydować czy projekt zachowa dla siebie czy go udostępni.
    Jedna osoba zarzucała (nie wiem komu) możliwość kradzieży (albo i nie). Nie udostępnisz, nikt tego nie zrobi i "nie ukradnie" ale przy okazji jak wątek zostanie zasypany innymi postami (a tak będzie niebawem) to wszyscy o tym zapomną.
  • #34
    kisiel291
    Level 11  
    Grzegorz77 wrote:
    bajcik wrote:
    Czy Geos potrafi tego używać?

    Jeżeli chodzi o GEOS to jedyne co sprawdziłem to że dostępne wersje działają.
    Aby system mógł wykorzystać 16 MB musiałby powstać np. sterownik RAM dysku.
    Niestety wymagałoby to trochę czasu którego zwyczajnie nie starcza na wszystko.
    Tym bardziej że w zasadzie wszystko robię sam.


    Najpierw trzeba znać GEOS i wiedzieć jak on posługuje się rozszerzeniami pamięci w formie ram dysku. Rozbudowa pamięci operacyjnej w opisywany przez autora sposób wyklucza szybkie współdziałanie GEOSA z tym rozszerzeniem na zasadzie ramdysku.
    Przełączanie całej pamięci 64KB ram c64 zostało wykonane w 1987r przez Marco Makela. Dokonywało się to przez zapis do dwóch rejestrów pamięci podmieniając cztery segmenty 16kB na kolejne segmenty 16KB.
    ftp://www.zimmers.net/pub/cbm/documents/projects/memory/c64/256kB/256kB.html
    Różnica pomiędzy przełączaniem banków:
    w przypadku projektu 16MB zmiana dokonywana jest przez zapis do jednej komórki pamięci 256*64KB, umożliwia to przełączanie tylko 64kB ramu.
    w przypadku projektu 256KB zmiana dokonywana była przez zapis do dwóch komórek. Dawało to możliwość podmiany 16KB, 32kB, 48KB lub 64kB

    Obszar IO w obu przypadkach był teoretycznie wolny , autor modułu 16MB zdecydował się zastosować powielony obszar rejestrów SID VIC CIA zakładając błędnie że nie naruszy to kompatybilności z softem. Istnieje software który używa IO w inny sposób np. lda tabl,x sta $d000,x gdzie x jest większe niż 64. Taki sposób kodowania skraca procedure inicjalizacji IO do jednej pentli.

    Software do pseudo multitaskingu napisany został też przez Marko Makela, poza tym monitor pamięci oraz emulator dysku.

    Rozwiązanie 256kB nie przyjęło się na stałe w historii c64, także każde inne rozwiązanie np. +60KB z oczywistych względów t.j. z konieczności modyfikowania softu pod rozszerzony RAM.
  • #35
    Grzegorz77
    Level 25  
    kisiel291 wrote:

    Najpierw trzeba znać GEOS i wiedzieć jak on posługuje się rozszerzeniami pamięci w formie ram dysku.

    Robi to przez sterowniki, zresztą jest takich rozszerzeń co najmniej 3 rodzaje pod względem budowy i każde z nich działa na zupełnie innej zasadzie.
    A tak na marginesie poco w systemie w którym mogę załadować 256 programów i je przełączać kiedy zechcę , miałbym je za każdym razem przerzucać z pamięci do pamięci ?
    Ciekawe ilu ludzi używa RAMdysku pod systemem windows ?
    Zresztą jeśli ktoś chce to w moim rozszerzeniu zawsze może użyć innych modułów,moje rozszerzenie z nimi będzie działać czego niemożna powiedzieć o tym którego przykład podałeś ponieważ tamto korzysta z adresów przewidzianych
    właśnie dla dodatkowych rozszerzeń.
    kisiel291 wrote:

    Przełączanie całej pamięci 64KB ram c64 zostało wykonane w 1987r przez Marco Makela.

    Hmm już w pierwszym zdaniu jest napisane że rozwiązanie to pierwszy opisał niejaki Pekka Pessi's a 6 lat później Marko Makela jedynie przetłumaczył na j.angielski
    Do tego autor użył drogich w 1987 r. układów pamięci 256kB, do tego jeszcze MC6821 i trudno dostępnego zawsze (w zasadzie produkowany tylko na potrzeby commodore) MOS6526. Plus ograniczenia dla używania popularnych modułów.
    I może to było przyczyną niepowodzenia projektu ?
    kisiel291 wrote:

    Obszar IO w obu przypadkach był teoretycznie wolny , autor modułu 16MB zdecydował się zastosować powielony obszar rejestrów SID VIC CIA zakładając błędnie że nie naruszy to kompatybilności z softem. Istnieje software który używa IO w inny sposób np. lda tabl,x sta $d000,x gdzie x jest większe niż 64. Taki sposób kodowania skraca procedure inicjalizacji IO do jednej pentli.

    Nie wiem kto tak koduje, ale do najmądrzejszych chyba nie należy bo jeśli tak zrobi to jego program nie będzie działał na commodore c128 który już ma dekoder nieuproszczony jak c64 i nie stosuje mirroringu w obszarze I/O
    Widocznie commodore projektując c128 nie wiedziało o takim "ułatwieniu programowania" ;)
  • #36
    kisiel291
    Level 11  
    W pierwszym zdaniu z linku:

    "Marko Mäkelä (Marko.Makela@FTP.FUNET.FI)
    Pekka Pessi (Pekka.Pessi@HUT.FI)
    January--February, 1987
    ....By now, I know of two Commodore 64 (mine and Pekka Pessi's) where this expansion has been built, and of four Commodore 128s (of which two expanded by me, and the other two by Wolfgang Scherr and Matthias Kirchner from Germany). The expansion never became a success, although the banked concept is technically better than e.g. the Commodore REU. Meanwhile, there is one more program that supports the expansion: my transfer system prlink"
    Marko Makela oprócz budowy robił jeszcze soft do tego wynalazku.

    Dlaczego przegrał z REU pomimo że umożliwiał lepsze bankowanie ?
    Bo Klient kupuje rozszerzenie z REU wtyka w c64 i nie musi mieć wiedzy tajemnej.
    Cena REU zawsze była dużo większa niż takiego rozszerzenia bo kontroler pamieci kosztował więcej niż 6821 , którego zresztą można prosto zaemulować w scalaku CPLD za 5 złotych.

    Życzę powodzenia z projektem oraz pełno użytkowników.

    Konstruktorów rozszerzeń było wielu z wyznawcą trudno się dyskutuje bo to rynek wycenia wartość projektu nie autor.
  • #37
    Ronin64
    Level 35  
    11111olo wrote:
    Życzę sukcesu w zrobieniu czegoś więcej na tym hardware. Musi kolega zdecydować czy projekt zachowa dla siebie czy go udostępni.
    Jedna osoba zarzucała (nie wiem komu) możliwość kradzieży (albo i nie). Nie udostępnisz, nikt tego nie zrobi i "nie ukradnie" ale przy okazji jak wątek zostanie zasypany innymi postami (a tak będzie niebawem) to wszyscy o tym zapomną.


    Uderz w stół... A co do projektu to świetne, że autorowi się chciało i zbudował coś takiego. Z pewnością sam zdecyduje co dalej z nim począć. Nie jest ono co prawda w tak przystępnej formie jak cartridge. Jest pewnym ograniczeniem dla tych którzy chcieliby je mieć oraz dla tych którzy w prosty sposób chcieliby na tym zarobić. Szkoda, że wszelkie rozszerzenia tego typu powstają tak późno. Największym "wzięciem" cieszyło się jednak +60kB i ciężko będzie pobić jego popularność.
  • #38
    11111olo
    Level 42  
    Weź pod uwagę fakt że te rozszerzenia w czasach ich świetności były wykorzystywane tylko z jednego powodu. Turbo assembler zajmował sporo pamięci a dodatkowe 60kB umożliwiało kompilowanie długich kodów.
    Dziś to jest mniej ważne. Większość koderów przesiadła się na dużo wygodniejsze środowiska programistyczne C64 na PC. Jest o wiele łatwiej i szybciej napisać czy poprawić jakiś program.
    Można było by w prosty sposób dołożyć teoretycznie nieograniczona ilość pamięci i to w porcie cartridge tylko problemem jest to że port jest jeden.
  • #39
    Ronin64
    Level 35  
    To fakt. Niestety kiepskie jest to, że po tej przesiadce pisze się dema tak aby zapewnić ich działanie na emulatorze zamiast na prawdziwym komputerze.
  • #40
    11111olo
    Level 42  
    Nie wiem kto tak pisze. Z tego co wiem demoscena C64 robi wszystkie dema aby szło je uruchomić na prawdziwym sprzęcie.
  • #42
    Ronin64
    Level 35  
    Można użyć SD2IEC i będzie prościej ;)
  • #43
    11111olo
    Level 42  
    Czas wgrania 16MB trwa całe wieki. To nie PC gdzie dysk czyta minimum po kilkadziesiąt MB/s. Na C64 normalnie jest 0,3-0,4kB/s a z turboloaderem dużo poniżej 10kB/s.
    Zakładając okrągłe 10kB/s wczytanie 16MB zajmie 6000s (godzina i czterdzieści minut). W praktyce to będzie jeszcze dłużej.
  • #44
    Grzegorz77
    Level 25  
    Wczoraj udało się dwie rzeczy.
    1. Dostosować system tak że symuluje cartridga. W przyszłości pozwoli to na przeniesienie go do pamięci ROM i szybki start bez ładowania z pamięci zewnętrznej, oraz załadowanie do banków przydatnych programów.
    2. Powstaje interfejs programowy pozwalający na korzystanie z funkcji systemu za pomocą łatwych do zapamiętania rozkazów BASIC-a.Już teraz np. można łatwo, a przede wszystkim szybko stworzyć (nawet bez zagłębiania się w assembler) dostosowany do siebie program pozwalający na automatyzację obsługi.
    Np. z poziomu głównego programu skonfigurować kolejną maszynę wirtualną, wykonać jak podprogram zawarty w niej inny program np. (disk monitor , czy edytor tekstu, czy program graficzny) i powrócić do głównej pętli programu w innym banku.
    :D
  • #45
    11111olo
    Level 42  
    Widać że szykuje się super produkt. Można wiedzieć kiedy Kolega przewiduje sprzedaż i jaka będzie orientacyjna cena?
  • #46
    Grzegorz77
    Level 25  
    11111olo wrote:
    Czas wgrania 16MB trwa całe wieki. To nie PC gdzie dysk czyta minimum po kilkadziesiąt MB/s. Na C64 normalnie jest 0,3-0,4kB/s a z turboloaderem dużo poniżej 10kB/s.
    Zakładając okrągłe 10kB/s wczytanie 16MB zajmie 6000s (godzina i czterdzieści minut). W praktyce to będzie jeszcze dłużej.


    Czy jeśli np. masz komputer z 32 GB RAM to zaraz musisz całą pamięć załadować programami ?
    Ten problem już po części jest rozwiązany za pomocą sprzętowego układu UART.
    Z którym można się zapoznać tu:
    https://www.elektroda.pl/rtvforum/topic3010796.html
    Ale obsługa RS z prędkością maksymalną 23 kB to dopiero mała część jego funkcji (układ może przesyłać do c64 dane z maks. prędkością ok 70kB/s) i docelowo ma obsługiwać urządzenia zewnętrzne za pomocą interfejsów SPI i2c czy QDI każde z nich ma być adresowane indywidualnie za pomocą 8 bitowego adresu.
    Wtedy można będzie np. dołączyć tanie moduły od androida , czy Raspberry Pi w rodzaju szybkich czytników SDcard, moduły Ethernet .WiFi i inne ;)
    I takie jest główne założenie tego rozszerzenia, a nie demka które leniwce i tak oglądają na PC i płaczą że ktoś "używa" komputera który na portalu można kupić za kilka zł w stanie który kwalifikuje go na śmietnik a nie do kolekcji.
    Zresztą diwie się lamentom że ktoś używa komputera (który pewnie skończyłby na śmietniku po obrabowaniu np. z SID-a)
    To rozszerzenie jest głownie tworzone dla kogoś kto chce się czegoś nauczyć, a nie tylko oglądać czyjąś pracę ;)

    Dodano po 1 [godziny] 1 [minuty]:

    11111olo wrote:
    Widać że szykuje się super produkt. Można wiedzieć kiedy Kolega przewiduje sprzedaż i jaka będzie orientacyjna cena?

    Jak na razie rozszerzenie nie jest komercyjne i stanowi konstrukcję czysto amatorską.
    Zresztą ciągle jeszcze nie jest do końca gotowe, przynajmniej w części programowej.
    Nie twierdzę że w przyszłości produkt nie mógłby się stać komercyjnym, ale do tego czasu trzeba by jeszcze włożyć w niego sporo pracy i czasu którego zwyczajnie brakuje.

    Dodano


    Link


    Film pokazujący działanie system, tw65535orzenie wirtualnych maszyn za pomocą rozkazu reset (<-R x) gdzie x numer z przedziału 0-255. Bank 255 zajmuje system operacyjny, a 254 domyślnie Turbo Asembler
    Rozkaz <-G x,[y]
    x- nr. banku pamięci
    y - 0 - 65535 , 0- po przejściu do banku x automatycznie uruchom program w BASIC
    inna wartość uruchom kod maszynowy o adresie y.
    Brak y uruchom tylko edytor BASIC.



    Dodano

    Dziś udało się zakończyć adaptację Turbo Asemblera.
    Z dodatkowych funkcji ma możliwość kompilacji kodu wynikowego do dowolnego banku pamięci oraz pobierania danych z całej pamięci wprost do linii kodu programu.
    Dzięki temu jest możliwość pobierania bezpośrednio do kodu źródłowego ,danych z programów graficznych, edytorów spritów , danych muzycznych z sound trackerów , czy edytorów tekstu, w razie potrzeby można je tam tworzyć , poprawiać, edytować itd.
    W sumie można sobie zmontować z ulubionych programów coś np. na kształt edytora graficznego.
    Teraz tworzenie nakładki graficznej na system powinno być dużo łatwiejsze i przyjemniejsze ;)

    Moderated By fortronik:

    Nie piszemy post po poście. Należy użyć funkcji edytuj w takich przypadkach.



    Grzegorz77 wrote:
    Użytkowniku @kisiel291czy te wprowadzające innych w błąd informacje które tu podałeś mają coś wspólnego z tym że sprzedajesz rozszerzenia do c64 ?
    Bo jakoś dziwnie po wszystkich forach za mną łazisz i wszędzie próbujesz wpisywać te "informacje" ?
    Jaki masz interes w torpedowaniu wszędzie tego rozszerzenia którego nawet nie widziałeś na oczy ?
  • #47
    ANUBIS
    Level 32  
    Moderated By ANUBIS:

    Uprzedzam Wszystkich piszących.
    Jakiekolwiek ataki personalne wobec dyskutujących w tym temacie oraz osób trzecich, będą nagradzane zgodnie z regulaminem forum.
    Macie ciekawe pole do popisu wiedzą i umiejętnościami, to korzystajcie z tego aby pomagać innym.

  • #48
    kisiel291
    Level 11  
    Torpedowanie rozszerzenia = stwierdzenie faktu że rozszerzenia wewnętrzne NIGDY nie przyjęły się na rynku c64.
    Zewnętrzne rozszerzenie REU sprzedano w ok. 5 tysięcy egzemplarzy.
    +60KB ma około 8 osób w PL.
    16MB REU ma około 3 tysiące userów w postaci 1541Ultimate.
    16MB by elektroda.pl ... jeden. Grzegorz77
    Fakty Fakty Fakty.
    Czego Autor oczekuje ?

    PS. 16GB to by było coś.
  • #49
    jackfinch
    Level 16  
    Quote:
    16GB REU ma około 3 tysiące userów w postaci 1541Ultimate.
    16GB by elektroda.pl ... jeden. Grzegorz77


    Chyba ci chodzi o 16MB?
  • #50
    Grzegorz77
    Level 25  
    @kisiel291 To co masz jako zdjęcie profilowe to jest to REU którym handlujesz/handlowałeś ?
    To może uświadom nas po ile sprzedajesz :?:
    Może zaproponuj mi cenę, to rozważę , jak będzie atrakcyjna to może sobie dokupię szybką dyskietkę (bo w REU nie można uruchomić programu o czym doskonale wiesz choćby dlatego że już n ty raz mnie o to pytasz na różnych forach )przed uprzednim przepisaniem do pamięci operacyjnej,
    Będę miał i 16 MB pamięci operacyjnej w której mogę uruchomić programy i 16 MB pamięci RAMdysku.

    Ja ze swej strony napiszę że mnie 16 MB kosztowało poniżej 30 zł, a ile REU 16MB kosztuje u ciebie :?:
  • #51
    kisiel291
    Level 11  
    Nie rozumiem to zdjęcie to GeoAction produkcja i sprzedaż zakończona w 2010r.
    Nie jest to rozszerzenie pamięci tylko combo coś co działa i na co jest oprogramowanie.
    Dziękuje za darmową reklamę na elektroda.pl produktu który wyszedł z produkcji 5 lat temu.
    Może z wtórnego rynku za 20 lat uda się Panu to odkupić !
    Polecam za to rozszerzenie do c64 16MB autorstwa pana Grzegorza77.


    teraz moderator elektroda.pl sam nie będzie wiedział o co chodzi.
  • #52
    Grzegorz77
    Level 25  
    Czyli rozumiem że z zakupem nowego REU 16MB byłby problem ?

    No cóż wielka szkoda, nie będę miał 32 MB.
    Dziękuję za reklamę, ale przynajmniej na razie nie jest potrzebna.
    [EDIT]
    Pozwoliłem sobie zrobić małe porównanie REU 16MB vs moje 16 MB.
    Na początek kilka istotnych informacji:
    -taktowane procesora 1 MHz, system wizyjny PAL (50 klatek/s).
    -w wielu programach wykorzystuje się przerwania układ wizyjnego co daje nam 1MHz/50 klatek ok 20000 cykli maszynowych
    Procesor 65xx wykonuje rozkazy z prędkością 2 do 6 cykli.
    Zadanie uruchomić 2 programy równolegle plus muzyczka.
    Program nr 1 piszemy w edytorze tekstu jakiś super fajny program (albo list do cioci)
    Program nr 2 super ważne obliczenia całki, tabeli do pisanego programu, albo coś tam jeszcze np. sprawdzamy czujniki kontrolne w naszym inteligentnym domu.
    Program nr 3 to muzyka na przerwaniach aby nam się nie nudziło podczas pisania.
    Niech program nr, 3 zajmuje 60 kB i potrzebuje 1000 cykli podczas każdego przerwania do odtworzenia muzyki.
    Wszystko jasne , to zaczynamy :D
    Code:


    czynność                      TAKT             REU 16 MB                       moje 16MB 
    przejście do nowego           1     zachowanie  zawartości              przełaczenie
    wątku                                     pamięci RAM po poprzednim           zadania
                                                 programie
                                                                                            start
                                         10                                               program 1


                                       19000     udało sie zachować ok           przełączamy
                                                      19 kB RAM zadania              zadanie i 64 kB
                                                      poprzedniego czyli ok.          RAM i gra muza
                                                       1/3 całej pamięci RAM
                                                    Chyba trzeba zapomnieć
                                                    o muzyce, albo niech
                                                     3 tys. userów coś wymyśli        przełączamy
                                        20000     20 kB zachowane                   przełączmy
                                                                                 64k RAM i    program 2
                                                                                                 

                                         40000    zachowaliśmy 40 kB                 start prg 1
                                          64000   zachowaliśmy 64kB                    start prg 2
                                                       możemy zacząć ładować
                                                      program nr 2


                                           80000    załadowaliśmy 20kB                 start prg 1
                                   

                                         100000       załadowaliśmy 2/3 RAM         start prg2
                                          128000      Uff załadowaliśmy 64kB          start prg 1
                                                         możemy uruchomić prg 2
     


    Wnioski pozostawiam do analizy zainteresowanym :idea:

    PS.
    Wariant optymistyczny zakład że w przypadku REU program zadania nie nadpisze programu kontrolującego system przełączania zadań bo mamy zwis (c64 nie ma pamięci chronionej jądra systemu)
    W moim przypadku jest to mało prawdopodobne ponieważ system kontrolny znajduje się w obszarze którego w normalnej konfiguracji nie ma więc żaden program raczej go nie uszkodzi :D
  • #53
    Nieztejbajki
    Level 15  
    Dla mnie projekt fajny i nawet jeśli będzie istniał tylko w jednym egzemplarzu to i tak jest świadectwem dużej wiedzy i chęci do zrobienia czegoś nieszablonowego. Co do sceptyków mówiących, że to bez sensu i komputer powinien być pozostawiony oryginalny, to można to przyrównać do Hot Rodów - maja swoich fanów i przeciwników. Tam też pozornie niszczymy klasyczne auto, żeby powstało coś wyjątkowego.

    Dla mnie fajne.
  • #54
    Grzegorz77
    Level 25  
    @Nieztejbajki
    Sceptykami niema co się przejmować -... karawana jedzie dalej ;)
    Z tymi przeciwnikami to chyba jest tak że wcale niema ich tak wielu tylko robią wiele hałasu.
    Zresztą po ilości wejść prawie 20 tys. i ilości plusów myślę że ludzi nastawionych pozytywnie jest znacznie więcej niż ciągłych malkontentów ;)
    A co do niszczenia "zabytków" to jest dokładnie odwrotnie bo układ wcale nie musi ingerować w sprzęt dziś już wiem że da się go zamontować bez lutownicy, no i dzięki niemu można będzie nawet przywrócić do życia komputerek z uszkodzonym RAM-em czy nawet bez SID jeśli komuś nie zależy na dźwięku a chciały coś przy pomocy c64 coś fajnego zrobić.
    Dzięki pasjonatom którzy ciągle coś tworzą 8 bitowe komputerki (nie tylko c64) jeszcze długo nie będą kurzącymi się w gablotach zabytkami.
    Parę osób pytało mnie o plany względem projektu.NA razie muszę opracować płytki do zamówienia dla siebie w końcu trzeba to zrobić profesjonalnie :D
    Jeśli są osoby zainteresowane projektem to proszę dać znać, jak będzie ich więcej to kto wie może trzeba będzie zmienić plany zbudować więcej niż jeden egzemplarz :D
    Pozdrawiam
    W międzyczasie udało się uruchomić dodatkowe rozszerzenie sprzętowe do systemu.
    Z założenia miało ono spełniać funkcję analogiczną do Freezera dostępnego w kilku cartrigach do c64, a jednocześnie dać dodatkowe funkcje dla systemu.
    Z dodatkowych funkcji to np. że istnieje teraz możliwość "przechwycenia" wszystkich przerwań tak NMI, jak i IRQ oraz programowanego BRK, a nie tylko NMI jak w klasycznym rozwiązaniu.
    Działa to mniej więcej tak że po "zezwoleniu" na przejęcie przerwania i jego wykryciu bank pamięci zostaje automatycznie przełączony, a po obsłudze przerwania możemy powrócić do głównego programu.
    Dzięki temu można np. uruchomić funkcję śledzenia programu w sposób analogiczny jak w procesorach x86 gdzie po wykonaniu każdej instrukcji można wywołać przerwanie i sprawdzić rejestry, co bardzo ułatwia znalezienie błędu w programie.
    Można też tak napisać program że przerwanie zostanie obsłużone przez program w innym banku RAM.
  • #55
    kango17
    Level 1  
    Witaj
    Bardzo ciekawy projekt, kiedyś trochę programowałem 6502 na atari.
    Możesz napisać bardziej szczegółowo jak wygląda przełączanie banków od strony programowej.
  • #56
    rs232
    Level 10  
    Czy projekt jest dalej realizowany ?
    Jest szansa na udostępnienie opisu, bo chciałbym wypróbować działanie tego moda w swoim c64 ?
  • #57
    tzok
    Moderator of Cars
    Wszystko fajnie, ambitny projekt i niemała wiedza ale po co?
    Są dwie opcje:
    1) Mamy 256 wirtualnych komputerów C64, każdy ma 64kB własnej pamięci i tylko jeden na raz może działać (multiprogramming), aby się przełączać pomiędzy wirtualnymi maszynami konieczny jest reset. Potencjalnie nadaje się to do debugowania programów, tylko do tego wystarczą 2 banki po 64kB, no i kto dzisiaj coś pisze na C64... no może poza demami, ale coś użytecznego. Istniejące oprogramowanie nie jest w stanie wykorzystać tego rozszerzenia, a debugować można na emulatorze (całe jądro NT powstało na emulatorze).
    2) Jeśli napisać własny system operacyjny i własne oprogramowanie uzyskamy coś na kształt wielozadaniowości, jaką znamy z Windows 3.x (czyli program działający na pierwszym planie sam musi oddać czas procesora procesom działającym w tle i sam musi obsługiwać przełączanie procesów - cooperative multitasking), od biedy te 0,7kB współdzielonej pamięci można wykorzystać w charakterze czegoś na kształt DDE (schowka). Ale pytanie - po co tyle zachodu.
  • #58
    rs232
    Level 10  
    tzok z tym sofceniem pod comode jesteś w błędzie, w byłych Niemczech (obecnie Islamabad) na iventach ludzie pokazują naprawdę mega wypasione narzędzia, głównie do tworzenia muzyki i co najlepsze całość powstaje na prawdziwym C64 (tam na imprezach jest grubo ponad tysiąc osób, gdzie u Nas w kraju nie przekracza to nawet pół setki). To rozszerzenie będzie miało sens jeżeli zapewni kompatybilność z REU inaczej nikt tego nie będzie pchał do swojej komody poza kilkoma zapaleńcami, tym bardziej że wymaga ingerencji sprzętowej.

    Czy autor projektu może zdradzić czy prace są dalej prowadzone i na jakim są etapie ?
  • #59
    kisiel291
    Level 11  
    Super by było aby autor otworzył źródła oraz schematy jak projekt SD2IEC.
    Każdy by mógł sobie na tym zarobić albo zrobić !