Aktualności: C64 Power - online od stycznia 2000 !

Autor Wątek: Dlaczego C64 przechowuje kopie ROM w RAM?  (Przeczytany 767 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline Fishman

  • Level 2
  • **
  • Wiadomości: 70
Dlaczego C64 przechowuje kopie ROM w RAM?
« dnia: 03 Sierpnia 2016, 15:10 »
Nie dość, że maszyna ma RAM nie za wiele, to jeszcze przetrzymuje w niej kopię BASICa i KERNALa, czyli łącznie ok 1/4 pamięci RAM zajmuje sam skopiowany 1:1 ROM.

Przy rozdzielaniu tych przestrzeni adresowych owszem, pojawia się pewien problem, bo 16-bitowa szyna adresowa pozwala na zaadresowanie tylko 64KB i trzeba by wprowadzić np. stronicowanie, ale taki sam mechanizm był już przecież stosowany np. w VIC-20, gdzie BASIC był ładowany do pamięci, przez co użytkownik miał dostęp do biednych 3,5KB RAM.

Czy "zmarnowanie" 1/4 pamięci RAM ma jakieś szczególne uzasadnienie?



Offline Raf

  • Master of disaster
  • Administrator
  • Level 7
  • **********
  • Wiadomości: 7333
  • Wolność, własność, sprawiedliwość
Re: Dlaczego C64 przechowuje kopie ROM w RAM?
« Odpowiedź #1 dnia: 03 Sierpnia 2016, 15:20 »
przypomniala mi sie scena https://youtu.be/PuNOdgsjAuU?t=3m35s
"Cokolwiek powiesz albo napiszesz, znajdzie się ktoś, kto słyszy lub czyta coś zupełnie innego i jeszcze bezczelnie wmawia Ci to"

Offline bor@s

  • Level 3
  • ***
  • Wiadomości: 245

Offline Fishman

  • Level 2
  • **
  • Wiadomości: 70
Re: Dlaczego C64 przechowuje kopie ROM w RAM?
« Odpowiedź #3 dnia: 03 Sierpnia 2016, 15:35 »
http://dustlayer.com/c64-architecture/2013/4/13/ram-under-rom

Hm, czyli przy "poważniejszych" zastosowaniach, można sobie przełączać między ROM i RAM, a dla nieskomplikowanych progamów w BASICu mamy podstawową konfigurację. Sprytne.

Offline Kisiel

  • Level 7
  • *******
  • Wiadomości: 11447
  • Number 7 in all users competition...
    • http://wiki.projekt64.filety.pl/doku.php
Re: Dlaczego C64 przechowuje kopie ROM w RAM?
« Odpowiedź #4 dnia: 03 Sierpnia 2016, 17:12 »
przypomniala mi sie scena https://youtu.be/PuNOdgsjAuU?t=3m35s
Las o kurwa krzyży.
Ogólnie user nawet nie sprawdził ile ma ramu c64 w necie, więc genialność dedukcji nie została zakłócona.
Ja na tę okoliczność publikuje to https://www.youtube.com/watch?v=Epq7h15wiTs
idz wyprostowany wśród tych co idą na kolanach

...w przypadku checi zakupu UK1541,GA,MA,T8500,T7501 prosze o kontakt na Facebooku, haslo: UK1541....

Offline Raf

  • Master of disaster
  • Administrator
  • Level 7
  • **********
  • Wiadomości: 7333
  • Wolność, własność, sprawiedliwość
Re: Dlaczego C64 przechowuje kopie ROM w RAM?
« Odpowiedź #5 dnia: 03 Sierpnia 2016, 18:13 »
http://dustlayer.com/c64-architecture/2013/4/13/ram-under-rom

Hm, czyli przy "poważniejszych" zastosowaniach, można sobie przełączać między ROM i RAM, a dla nieskomplikowanych progamów w BASICu mamy podstawową konfigurację. Sprytne.

jest to bardzo prymitywne MMU. Wypasione jest w C128.
Ale mechanizmu takiego w ogole nie ma dla vica 20, ponadto nie nastepuje tam kopiowanie do ramu - w vicu jet tylko 5kb ramu out of the box. Rom jest mapowany do przestrzeni adresowej.
Niemniej jednak wiedza ta jest ogolnodostepna, gdybys zadal pytanie pokroju "jak dziala wybieranie pamieci w C64" to pewnie odzew bylby inny :)
"Cokolwiek powiesz albo napiszesz, znajdzie się ktoś, kto słyszy lub czyta coś zupełnie innego i jeszcze bezczelnie wmawia Ci to"

Offline Fishman

  • Level 2
  • **
  • Wiadomości: 70
Re: Dlaczego C64 przechowuje kopie ROM w RAM?
« Odpowiedź #6 dnia: 04 Sierpnia 2016, 13:55 »
Się czepiacie. Swoją drogą rzeczywiście mogłem poczytać, zamiast spojrzeć tylko na mapę pamięci i założyć, że wygląda to tak samo jak w mikrokontrolerze z rozdzieleniem pamięci programu i danych.

Offline Kisiel

  • Level 7
  • *******
  • Wiadomości: 11447
  • Number 7 in all users competition...
    • http://wiki.projekt64.filety.pl/doku.php
Re: Dlaczego C64 przechowuje kopie ROM w RAM?
« Odpowiedź #7 dnia: 04 Sierpnia 2016, 16:01 »
możesz poszerzyć temat ?
idz wyprostowany wśród tych co idą na kolanach

...w przypadku checi zakupu UK1541,GA,MA,T8500,T7501 prosze o kontakt na Facebooku, haslo: UK1541....

Offline Raf

  • Master of disaster
  • Administrator
  • Level 7
  • **********
  • Wiadomości: 7333
  • Wolność, własność, sprawiedliwość
Re: Dlaczego C64 przechowuje kopie ROM w RAM?
« Odpowiedź #8 dnia: 04 Sierpnia 2016, 18:21 »
założyć, że wygląda to tak samo jak w mikrokontrolerze z rozdzieleniem pamięci programu i danych.
Nie rozumiem, ATMega na ten przyklad potrafi wykonywac kod tylko z wbudowanej pamieci flash a RAM sluzy jako pamiec robocza, w 6502 nie ma takiego podzialu - jest po prostu 64k przestrzeni adresowej.
"Cokolwiek powiesz albo napiszesz, znajdzie się ktoś, kto słyszy lub czyta coś zupełnie innego i jeszcze bezczelnie wmawia Ci to"

Offline rs2322

  • Level 5
  • *****
  • Wiadomości: 540
  • ASAP
Pamięci RAM każda ilość: KM4164, 4464, TMS 4464 MT1259-10
PCB - projekty na zamówienie.
Programowanie pamięci EEPROM, EPROM - free !
SD2IEC http://c64power.com/forumng/index.php?topic=6630.0

Offline doman

  • Level 3
  • ***
  • Wiadomości: 117
Re: Dlaczego C64 przechowuje kopie ROM w RAM?
« Odpowiedź #10 dnia: 15 Sierpnia 2016, 17:20 »
To ja się jeszcze przyczepię, że 64 kB RAM to nie jest mało, na pewno nie w 1982 r. Wtedy wciąż jeszcze wiele konstrukcji oferowało 16 kB, tyle też wynosiła podstawowa konfiguracja pierwszych IBM PC, najbardziej wypasiony Apple ][ miał ze 48 kB.
Z resztą Commodore wykorzystywało to intensywnie w kampanii marketingowej:
https://www.youtube.com/watch?v=t7ZA4gNtqnk
https://www.youtube.com/watch?v=wyiUH9NmX0U
https://www.youtube.com/watch?v=0N2QPm4SWAM
https://www.youtube.com/watch?v=utLEuyNqVLI