1 Ostatnio edytowany przez mono (2024-12-15 14:01:59)

W Atariki wyczytałem o Newell Industries 256K co następuje:

Atariki napisał/a:

Dodatkowo pierwsze cztery banki (wartości PORTB $83,$87,$8B,$8F) są tożsame z ćwiartkami pamięci podstawowej i nie powinno się ich liczyć do rozmiaru pamięci rozszerzonej.

Czy to by oznaczało, że adresując bank $8F dostaniemy (wtem!) dostęp do schowanego 2KB RAM pod ROMem i MapRam nie jest wtedy potrzebny? Czy $8F zamapuje w $4000-$7FFF to co aktualnie podłączone jest w $C000-$FFFF (RAM/ROM/IO)?

Ktoś ma to rozszerzenie i mógłby potwierdzić używając nawet zwykłego XLF-a czy innego oka lub wglądownicy?

Edit: Dokument https://ia601901.us.archive.org/0/items … manual.pdf sumie by to w potwierdzał.

Edit: Poproszę jszcze o odpalenie programiku MEMSCAN.OBX i zaprezentowanie wyniku działania.

Post's attachments

memscan.obx 221 b, liczba pobrań: 3 (od 2024-12-15) 

Tylko zalogowani mogą pobierać załączniki.
hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

2

mysle ze jak przelacza caly bank z c000 do 4000 to rozem z okienkiem spod rejestrow sprzetowych, zreszta dokladnie tak dzialal ktorys niemiecki freezer ktory mial chyba nawet dwa tryby pracy ze co zapiszesz do rejestrow sprzetowych ladowalo w ram pod rom albo nie i wtedy ta pamiec byla "dla usera",

jednak...

mapram dziala inaczej - tylko 2kb jest mapowane a nie caly blok ;-)

http://atari.pl/hsc/ad.php?i=1.

3

Mi w maszynie z newellem (lub jego klonem?) pokazało się to co w załączeniu.

Post's attachments

newell.jpg 962.86 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.

4 Ostatnio edytowany przez mono (2024-12-16 12:48:43)

@laborant: Dzięki! Czyli jest zgodnie z opisem - $83,$87,$8B,$8F włączają pamięć podstawową.
A czy mógłbyś jakimś XLF-em ustawić w komórce $D301 wartość $8F i zobaczyć co znajduje się w $4000 i w $5000?
SHIFT+CONTROL+4 włączasz wglądownicę,
<> przeskakujesz o stronę,
strzałkami przesuwasz kursor,
0-9 i A-F wpisujesz wartość do komórki.

Edit: Może jak interpretować wyniki tego MEMSCAN.OBX :)

Dwucyfrowe wartości reprezentują wartość wpisaną do PORTB. Wartości prezentowane są wierszami po 16 wartości. Czyli pierwszy wiersz to $00-$0F, drugi $10-$1F, i tak dalej aż do $F0-$FF.
Wpisywane są kolejno wszystkie wartości do PORTB i do komórki $4000 (bank włączany jest w obszarze $4000-$7FFF), jeśli więc kilka wartości włącza ten sam bank, to po przejściu całej tej procedury w każdym istniejącym banku dostaniemy ostatnią wartość która bank wybierała.
FF to bank pamięci podstawowej w obszarze $4000-$7FFF.

Dodatkowo w każdym banku pod adresem $4100 wpisywana jest taka dlista:

$C1 $00 $41 JVB+DLI $4100

a w pamięci podstawowej dla odmiany

$41 $00 $41 JVB $4100

co pozwala nam sprawdzić czy ANTIC czyta dlistę z banku podstawowego (DLI nie wystąpi nigdy), czy z dodatkowego (DLI wystąpi). Jeśli DLI wystąpiło, to dla danego banku malujemy pierwszą jego cyfrę w inwersie.

Dlista bez DLI jest w rzeczywistości umieszczana w pamięci podstawowej pod adresami $0100, $4100, $8100 i $C100, co pozwala jeszcze wytestować mapowanie pamięci podstawowej w obszarze okna $4000-$7FFF.

Jeśli więc w wierszu $0x i $1x, $4x, $5x, ... mamy DLI, a w $2x i $3x, $6x i $7x, ... nie mamy to znaczy, że mamy osobny dostęp ANTIC-a i CPU do pamięci dodatkowej (bit 5 to ANTIC, bit 4 to CPU).
A jeśli mamy DLI w $0x, $2x, $4x, ... a w $1x, $3x, $5x, ... nie mamy, to wtedy mamy wspólny dostęp CPU i ANTIC-a do pamięci dodatkowej (bit 4).

Jeśli na pozycji $xx mamy DLI i wartość $FF oznacza to że CPU widzi bank podstawowy, a ANTIC dodatkowy (bo jest DLI).
Jeśli na pozycji $xx jest wartość $xx i mamy DLI, to i CPU, i ANTIC widzi bank dodatkowy.
Jeśli na pozycji $xx jest wartość $xx i nie mamy DLI, to CPU i ANTIC widzą bank podstawowy.
Jeśli wartości się powtarzają n razy to bity niższe niż log(2,n) :D nie biorą udziału w wybieraniu banków.

Trochę to wygląda na skomplikowane, ale w gruncie rzeczy dość proste.

Post's attachments

XL Friend 5.2 (v1).xex 7.12 kb, liczba pobrań: 3 (od 2024-12-15) 

Tylko zalogowani mogą pobierać załączniki.
hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

5

XLF:

Odpalam z odłączonym basicem - nie ma jak wywołać monitora pamięci. tzn. brak reakcji na shift+control+4
Reset nic nie zmienia.

Odpalam z basicem - wchodzę do monitora pamięci, kursory lub <> na stronie zerowej którą otwiera domyślnie = zwiecha.
Reset = pojawia się monitor, wchodzę na $D301 i co bym nie wpisał=zwiecha.

Wpisywanie danych w wolne obszary pamięci np. pod $4000 czy inne działa.
Komp odpala Bruce lee, można pograć, aby rozwiać wątpliwości, czy jakkolwiek sprawny.

Coś spróbować jeszcze?

6 Ostatnio edytowany przez mono (2024-12-16 21:51:23)

Poproszę jeszcze ten programik. Wybiera bank $8F i powinien pokazać:
- $CA $FE jeśli to RAM w $0000-$3FFF
- $FF jeśli to RAM w $4000-$7FFF
- $BA $BE jeśli to RAM w $8000-$BFFF
- naprzemiennie $FF i $00 jeśli to jest RAM pod ROM w obszarze $C000-$FFFF (a właściwie w $D0xx)
- nr banku w pierwszym bajcie jeśli to EXTRAM (nie powinno się zdarzyć).

Post's attachments

memshow.obx 142 b, liczba pobrań: 3 (od 2024-12-16) 

Tylko zalogowani mogą pobierać załączniki.
hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

7

Coś pokazał... ale chyba z poza zakresu? :)

Post's attachments

newell2.jpg 338.37 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.

8 Ostatnio edytowany przez mono (2024-12-16 21:47:48)

Wygląda zdrowo, bo popatrz - 10 10 00 00 .. a w dolnej połówce strony EF EF FF FF - schemat jest podobny jak przy pamięci RAM pod ROM w obszarach, które leżą poza układami I/O. A tu jest strona $D0, więc wygląda na to że on faktycznie pozwala w ten sposób na dostęp do całych 64KB pamięci podstawowej RAM :)
Dziękuję! Ludzkość Ci tego nie wybaczy. Tzn. nie zapomni.
Zaktualizowałem wpis w Atariki.

Edit: Pierwszy bajt jest $8F bo zapomniałem że wpisuję nr banku do pierwszego bajtu.

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

9

Mam też 1megowego, jeśli miałbyś potrzebę coś sprawdzić.

10

Oooo, to poprosiłbym o uruchomienie MEMSCAN.OBX. Nie spodziewam się czego innego, jak kompatybilnosci pełnej z 1MB SIMM, ale kto wie? Może coś nowego zobaczymy.

U mnie na emulgatorze wygląda to jak w załączniku.

Post's attachments

atari000.png 2.62 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.
hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

11

Bez odkryć, jest to samo co w emu.
Zrobiłem też ten bank 8f za jednym zamachem.

Post's attachments

newell-1m-bank8f.jpg 251.58 kb, nikt jeszcze nie pobierał tego pliku. 

newell1m-banki.jpg 155.66 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.

12

Proszę pana! Ale to jest 1M ale zgodne z Atari130XE czyli ma rozdzielny dostęp CPU i ANTIC-a do pamięci. A w emulgatorze jest Rambo XL (czyli bez).
bit 0 włącza ROM,
bit 1 wybiera bank
bit 2 wybiera bank
bit 3 wybiera bank
bit 4 włącza dostęp CPU do pamięci dodatkowej
bit 5 włącza dostęp ANTIC do pamięci dodatkowej
bit 6 wybiera bank
bit 7 wybiera bank
co daje 32 banki po 16K czyli 512K. Jeśli to faktycznie 1M to musi bit 5 jednocześnie wybierać bank. Tak zresztą rzecze sam producent tu czy tu.
Ciekawe że ten 1 MEG XL to ma 3 sposoby montażu i za każdym razem inaczej działa...

Dzięki za testy!

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

13

Na screenie z memscana dla mnie wyglądały tak samo :) To jest ta wersja przewidziana do rozbudowy do 4mega.

Któryś z memtestów (nie xramtest satantronic-a, bo akurat tym nie sprawdzałem) po odpaleniu pokazywał że jest 1088kb i 64 banki, testował je i dawał "że ok".  Jak wrócę do chaty to jeszcze sprawdzę, bo nie pamiętam jego nazwy teraz.

Swoją drogą miałem kiedyś jakiś niemiecki memtest, który określał, czy jest osobny dostęp Antica do banków, czy nie, ale mi przepadł. Nazwy nie kojarzę i nie mogę tego już od dawna znaleźć.

14

Zabawiłem się kilkoma memtestami by pozyskać jak najwięcej informacji i wychodzi, że tak jak ja mam to wmontowane/skonfigurowane to działa jako Rambo 1024kb. Może da się dołożyć przełącznik trybu pracy rozszerzenia.

Demo Videoblitz w tej sytuacji nie chodzi...

Post's attachments

newell-1m-simcheck-banki.jpg 122.95 kb, nikt jeszcze nie pobierał tego pliku. 

newell-1m-simcheck.jpg 174.54 kb, nikt jeszcze nie pobierał tego pliku. 

newell-1m-xmst.jpg 132.93 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.

15 Ostatnio edytowany przez mono (Wczoraj 22:01:32)

Co w SimCheck oznaczają te XXX-y przy Base Memory? I czemu DX jest w inverse?

Edit: Rozdzielny dostęp ANTIC-a do pamięci dodatkowej możesz rozpoznać po tym, że co drugą sekcję (b5=0) w nieparzystych wierszach (b4=1) widzisz $FF (czyli CPU widzi tam pamięć podstawową), ale w inwersie (ANTIC wykonuje display list, który zgłasza DLI - a taki jest tylko w pamięci rozszerzonej).

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

16 Ostatnio edytowany przez laborant (Wczoraj 22:32:57)

Inverse=ok, teraz jasne, jest różnica. Ale Video Blitz nie działa na newellu-1m tak jakby nie było osobnego dojścia dla Antica. Na 130xe  i Compy shopie 576kb działa, więc tym demem łatwo sprawdzić czy ten dostęp jest.

Znalazłem nowszy simcheck, jutro sprawdzę co pokaże tu oraz na innych  rozszerzeniach - może coś więcej się dowiemy.
Ale może to tylko chodzi o zapis zakresu  w możliwie zwięzłej formie - 1xxx=1000-1FFF a DX wyróżnione fantazyjnie bo rejestry?

17

laborant napisał/a:

a DX wyróżnione fantazyjnie bo rejestry?

Może tak być, a że zajmują tylko 2KB to zainwersowane jest pół bloku :)

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje