26

OK - czemu nie. A jak zrzucałeś OS z Atary na grzyba ?? ..albo może spakuj jakim arcem pod sdx to się na grzybie pod jakim starym NC rozpakuje :D - jak pójdzie - to archiwum OK.


OK - widze topic  8O

Kontakt: pin@usdk.pl

27

Ja tego nie mogę teraz zrobić. Plik kopiował mi kolega, przez kabel szeregowy. Fakt, kretyni jesteśmy, żeśmy tego przedtem nie skompresowali, od razu byłoby wiadomo, czy przekopiowało się dobrze.

W każdym razie, u mnie plik wypalony w EPROM-ie działa. Jeśli to, co zapodałem pod wyżej wymienionym adresem nie działa, to znaczy, że transmisja się spieprzyła :(

KMK
? HEX$(6670358)

28

... albo Emul - pod którym testowałem niedomaga. Czyli możliwości są już dwie.

Kontakt: pin@usdk.pl

29

Suma kontrolna pierwszego bloku jest pod adresem $C000 i wynosi $9D03. Suma kontrolna drugiego bloku jest pod adresem $FFDE i wynosi $647D.

ckrom1 ldx #$00
    stx cksum
    stx cksum+1
?loop jsr getcks
    cpx #$0c
    bne ?loop
    rts
;
ckrom2 ldx #$00
    stx cksum
    stx cksum+1
    ldx #$0c
    jsr getcks
    jmp getcks
;
getcks ldy #$00
?loop lda ckstab,x
    sta tmpreg,y
    inx
    iny
    cpy #$04
    bne ?loop
    ldy #$00
?n  clc
    lda (tmpreg),y
    adc cksum
    sta cksum
    bcc ?nxt1
    inc cksum+1
?nxt1 inc tmpreg
    bne ?nxt2
    inc tmpreg+1
?nxt2 lda tmpreg
    cmp tmpreg+2
    bne ?n
    lda tmpreg+1
    cmp tmpreg+3
    bne ?n
    rts
;
ckstab .wo buf+2, buf+$1000
    .wo buf+$1000,buf+$1800
    .wo buf+$1800,buf+$2000
    .wo buf+$2000,buf+$3fde
    .wo buf+$3fe0,buf+$4000

'buf' to jest adres, pod który jest wczytana zawartość pliku xlos2.bin. jsr ckrom1 wpisuje sumę kontrolą pierwszego bloku ROM pod adres 'cksum', jsr ckrom2 wpisuje sumę kontrolą drugiego bloku ROM pod adres tenże. cksum musi być zmienną dwubajtową, a tmpreg czterobajtową, obie na stronie zerowej.

[ Dodano: 13.11.2004 10:21:30 ]

3)  there's a test for extended linear memory, peek(591) should return a number of *additional* (i.e. beyond the first 64k) 64k memory segments;

Poprawka: peek(590), nie peek(591).

KMK
? HEX$(6670358)

30

Ja tego nie mogę teraz zrobić. Plik kopiował mi kolega, przez kabel szeregowy. Fakt, kretyni jesteśmy, żeśmy tego przedtem nie skompresowali, od razu byłoby wiadomo, czy przekopiowało się dobrze.

W każdym razie, u mnie plik wypalony w EPROM-ie działa. Jeśli to, co zapodałem pod wyżej wymienionym adresem nie działa, to znaczy, że transmisja się spieprzyła :(

Wszystko jest w najlepszym porządku. Nie jesteśmy znowu tacy kretyni, bo protokół zawierał checksum, więc prawdopodobieństwo niepoprawnej transmisji jest znikome. Zresztą specjalnie przepchnąłem pliki w drugą stronę i porównałem z oryginałem. Wszystko się zgadza w 100%.

Ceterum censeo Germaniam esse delendam.

31

A ja napisałem w C rewolucyjny (Lizard wie o co chodzi, reszta nie musi :lol: ) program do liczenia sum kontrolnych ROM-u, i sprawdziłem, że plik jest OK.

Czyli, panie Pin, coś waścin emulator nie teges.

KMK
? HEX$(6670358)

32

OK - czemu nie. A jak zrzucałeś OS z Atary na grzyba ?? ..albo może spakuj jakim arcem pod sdx to się na grzybie pod jakim starym NC rozpakuje Very Happy - jak pójdzie - to archiwum OK.

WinAce jeszcze potrafi arca rozpakowac na grzybie. Poza tym google kolego: arc.exe. Obsluga taka sama jak pod SDX.

Zawsze mam rację, tylko nikt mnie nie słucha.

33

heh - to wychodzi na zonk UltraXE. Ok - w poniedziałek lece palić eporom :D

Kontakt: pin@usdk.pl

34

Tylko się nie zaciągaj! :) :lol:

Btw. sam jestem ciekaw co wyjdzie z tego. Nooo.... i mam już placformę na nowy procek.

Pinek - mata coś tam tego jeszcze?!? :)

I Ty zostaniesz big endianem...

35

...musze jechać po następne. Nie wiem tylko - ile tego brać;-

z tego - co było i poszło; to wydaje mi się, że chyba ok 25 sztuk

Kontakt: pin@usdk.pl

36

Jest nowa wersja ROM-u: http://82.210.159.30/65c816/

Jeśli ktoś ma trochę więcej liniowego RAM-u niż 64k, to niech mi powie, co wskazują wektory $03ef-$03f1 i $03f2-$03f4.

KMK
? HEX$(6670358)

37

Sprawdzilem. Dla 1MB liniowej w komórkach $03ef-03f1 sa odpowiednio: 00, 00, 01 (czyli $010000) a w $03f2-03f4: ff, ff, 0f ($0fffff). Zatem wsjo ok.  :D

38

No i dobrze, to jedziemy dalej ... ;-)

KMK
? HEX$(6670358)

39

Nie mam rozszerzki na '816 i nie bardzo się orientuję... Jakie usprawnienia niesie z sobą obecna poprawiona dla tego procka wersja OS'u i jakie są przewidzianie dla finalnej wersji ROM'u? Bo przecież to rozszerzenie chodzi też se zwykłym OS'em? No właśnie, hmmm...

40

Nie wiem, na ile orientujesz się w cechach 65c816. Ten procesor ma dwa tryby pracy, tryb emulacji (w którym jest to w zasadzie 65c02) oraz tryb natywny dający dostęp do 16-bitowych rejestrów i innych bajerów.

Problem w tym, że w trybie natywnym wektory przerwań CPU znajdują się gdzie indziej, niż w trybie emulacji (są przesunięte o 16 bajtów niżej, czyli np. wektor NMI nie jest pod $FFFA, ale pod $FFEA). W normalnym ROM-ie jest tam numer wersji, data jej wypuszczenia itd., więc z punktu widzenia CPU nic sensownego. Więc ze zwykłym ROM-em można normalnie używac tylko trybu emulacji, a przełączenie procesora w tryb natywny powoduje zwis.

A więc pierwszą i najważniejszą modyfikacją nowego ROM-u jest rozszerzenie systemu obsługi przerwań tak, żeby systemowe procedury przerwań działały bezkonfliktowo zarówno w trybie natywnym jak i emulacji.

Po drugie, 65c816 ma w ogóle więcej przerwań, więc nowy ROM daje support do ich wykorzystania (zdefiniowane nowe wektory w RAM-ie).

Po trzecie nowy ROM ma zdefiniowaną możliwość robienia bezpośrednich wywołań własnych funkcji z programu, który działa w obszarze pamięci poza pierwszymi 64k. Bo tradycyjna metodą to się nie da.

Po czwarte jest dodana podstawowa obsługa rozszerzonej pamięci liniowej, czyli wykrywanie jej wielkości oraz ustawianie dwóch wektorów o funkcji takiej, jak MEMLO i MEMTOP w podstawowych 64k.

Pomijając drobiazgi, które zostały zrobione niejako przy okazji (nieco szybsze procedury pakietu matematycznego, nieco szybsze procedury wyjścia na E: i S:), to na razie wszystko, ale jeszcze coś będzie, jak się zmieści  :?

KMK
? HEX$(6670358)

41

Dzięki serdeczne za wyjaśnienia. Nie wiedziałem do końca o co chodzi, teraz już wiem więcej  :)

42

Coś to nie chce działać... czy to tylko u mnie?

KMK
? HEX$(6670358)

43

Racja, muszę usunąc z sygnaturki dopóki nie będzie szansy na zadziałanie. Już dawno padł akademicki serwer na którym miałem stronę a nowi admini w dodatku widać... Ehhh, nie kwapią się delikatnie mówiąc  :evil:

44

Nowy adresik / New URL:

http://drac030.krap.pl/

Dzięki Krapowi ;-)

[ Dodano: 03.12.2004 21:22:33 ]
... a pod wyżej wymienionym adresem nowy ROM do przetestowania.

KMK
? HEX$(6670358)