Skoro jesteśmy w bałaganie, to ja też się dopiszę. 8)
Hmm, czy ktoś mi obiecał flaszkę (albo dwie) na zlocie? Bo nie wiem, czy mam przyjechać do Gdańska. :mrgreen:
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
ASAP ma 20 lat - wydanie 7.0.0 20 grudnia 2005 został utworzony pierwszy commit w repozytorium CVS projektu ASAP (Another Slight Atari Player).
FiSh 0.70 Bocianu wydał FiSh 0.70, shell ułatwiający przeszukiwanie zasobów serwerów TNFS.
Street Fighter II już na Atari 8-bit! Vega i jego zespół wydali finalną wersję kultowej bijatyki. Wymaga 4MB cartridge i 64KB RAM.
Elite Demo 6 na Atari 8-bit! Trwają prace nad konwersją kultowej gry Elite. Szóste demo wprowadza liczne poprawki błędów.
vbcc v5 dla 6502 Kompilator C vbcc doczekał się piątej wersji dystrybucji dla 6502. Zapewnia dużo szybszą arytmetykę FPU i nowe narzędzia.
atari.area forum » Posty przez Lizard
Skoro jesteśmy w bałaganie, to ja też się dopiszę. 8)
Hmm, czy ktoś mi obiecał flaszkę (albo dwie) na zlocie? Bo nie wiem, czy mam przyjechać do Gdańska. :mrgreen:
To, że koledzy, którzy lubią skoki na lewo stali się nagle purystami, gdy chodzi o wytykanie cudzych pomyłek i "lewackości". ;)
Może komunikat jest dla podniesienia prestiżu. Tak jak kiedyś w Sheolu Bit Bustersów "6502 detected". :lol:
Ja płacę, pan płaci, scena płaci...
A kierownik rozdaje bany. :mrgreen:
.. Dlatego - by jakiś dowcipniś nie napisał intra 4 kilo wyłącznie pod SpartaDOS X :D:D:D:D
Chyba nie podejrzewasz kogokolwiek o taki masochizm? W sumie czemu nie, skoro są demoa Newell Industries only, DOS II+/D only, floppy only, to dlaczego ma nie być SpartaDOS X only. ;)
Co mi pan sugeruje, proszę pana!?
Jak fajnie, tak off-topicowo.
Na każdym forum jest taka sytuacja, że ktoś musi zacząć pierwszy.
Wymagane ? co najmniej MyDOS.
A dlaczego akurat ten DOS?
Główne procedury systemu są wywoływane poprzez tablicę skoków. Oznacza to, że adresy ich są jednakowe we wszystkich wersjach Atari.
Jasne, że nie można winić Zientary za to, że książka, którą przepisywał zawiera błędy. ;) Zwróć uwagę, że mowa tu o głównych procedurach. Funkcje wskazywane przez wskaźniki zawarte w tablicy wektorów obsługi urządzeń nie są procedurami głównymi. Dostęp do nich wszystkich uzyskuje się przez skok do $E456. Dla operacji na pojedyńczych bajtach jest to jednak rozwiązanie najwolniejsze i dlatego stosuje się wektory pod $E400. Dla przykładu odczyt/zapis pliku na dysku:
wykonanie BGET #kanał, adres, długość spowoduje wywołanie przez główną procedurę CIO (tę w ROM-ie) procedury odczytu/zapisu pojedynczego bajtu przez sterownik dyskowy (czyli DOS). DOS sprawdza wtedy, czy rzeczywiście chodzi o jeden bajt, czy cały blok. Jeśli blok, to przeprowadza transmisję całości, a następnie poprzez modyfikację rejestrów systemowych oszukuje CIO tak, że ta myśli, że już wywołała Get/Put Byte odpowiednią ilość razy. Gdyby nie ta sztuczka, to byśmy sobie czekali i czekali. Nawet najszybszy twardziel niewiele by tu pomógł.
Hmm, głupia sprawa, bo pod Firefoksem wylatuje to co podaje Mikey, a w tym samym czasie pod IE otwiera się właściwa strona. Pewnie Microsoft wziął hostage na tę domenę i zmusił, by otwierała się tylko pod IE. ;)
Bo to dokładnie na tę modłę było i tworząc powyższe wzorowałem sie na przytoczonym przez Ciebie oryginale.
Tytlko tu k... nikt nie chce współpracować. :twisted:
Mówi się, że to co dla jednych zaletą, dla drugich wadą.
Zaletą jest dla ludzi mądrych - potrafią skorzystać, wadą - dla pozostałych. :twisted:
W Linii poleceń HiDOS'a chciałem zrobić obsługę np. historii poleceń, tylko że jeżeli użyję "E:", to bede ograniczony - nic niebede mógł robić jak OS'ROM czeka na naciśnięcie klawisza.
A co chcesz robić w tym czasie?
Pewnie ścigać się z userem. Czy user zdąży wcisnąć następny klawisz, czy ja szybciej zgadnę i wyświetlę na ekranie. :D
[ Dodano: 16.11.2004 15:45:26 ]
Casper: jak już Draco wspomniał, "legalna" jest nie tylko tablica skoków pod $E450, ale też parę innych rzeczy. Np. pamięć od $0000 - $05FF, $E000 - $E44F, $FFFA - $FFFF. ;)
Zientara zrobił błąd podając adresy procedur systemowych. Każdy myśli, że jak WZ napisał, to moż skakać do $Fxyz i zawsze będzie działać. :/
Nie jestem modem i inną nabjką, więc proszę pozotałych czytelników forum o nie pisanie więcej w tym wątku, gdyż postanowiłem go zamknąć, ale z powodu braku upraniwń nie mogę tego zrobić. Dlatego proszę o dostowsowanie się do mojego postulatu o nie pisanie więcej w tym wątku, gdyż wątek ten został zamknięty przeze mnie.
Dziękuje bardzo za współpracę i dostosowanie się do mojej prośby i nie pisanie już więcej w tym zamkniętym przeze mnie wątku. ;)
LDW 2000 ma gorszą mechanikę od CA 2001. I zdaje się, że to jedyna różnica pomiędzy nimi. Pomijając oczywiście wygląd zewnętrzny, cenę i zapewne wersję sterownika. :)
... żebym ja mial takie problemy.
Mogę się z Tobą podzielić. :twisted:
Współczesne procesory mają pewnie zapisane w sobue czym są. :) Takie informacje można zapewne wyciągnąć jakimś rozkazem lub grupą rozkazów. Ustalenie szybkości zegara odbywa się poprzez odpytanie chipseta o szybkość FSB i wielkość mnożnika. Sprawdzenie ilości pamięci tak samo. To są tylko przypuszczenia, bo aż tak się nie zagłębiałem. Nie sądzę, by sprawdzanie procesora polegało na testowaniu jakie rozkazy się wykonują, a jakie są nielegalne. Chociaż i to nie jest wykluczone, bo nie wszystkie modele CPU, na których może ruszyć Windows mają takie ficzery.
Widzę, że charakter forum z Atari 8-bit zmienił się na Windows logo and system properties in About box... :mrgreen:
Na zdjęciach jest 1050. Raczej nie przerobiona (tak tylko strzelam ;) ). Do tej stacji pasuje zasilacz od XF551 (stacja) i Atari 850 (4*RS232+Centronics).
Co tam. Teraz jesteśmy starsi panowie, ale choć nie to zdrowie, choć szron na głowie, to w sercach ciągle maj. :D
r0l0, ciekawe co na to gościu co już dał >200. :mrgreen: - to pewnie jego mina.
proszę bardzo - wstaw sobie to do procki TeBe lub Lizarda - albo mojej
Akurat wszystkie moje przykłady (2 sztuki + poniższy) są z klikiem klawiatury.
I TO NAPISAŁA OSOBA, KTÓRA UŻYWA TYLKO LEGALNYCH I ELEGANCKICH SKOKÓW Z TABLICY SYSTEMU OPERACYJNEGO.
Proszę bardzo. Oto procedura korzystająca w sposób legalny z tablicy wektorów obsługi urządzeń i nawet z tablicy skoków:
getc ldx #'K
jsr $E486 ; JNEWDEVC
lda $031A,x ; HATABS
sta $80
lda $031B,x
sta $81
ldy #$05
lda ($80),y
pha
dey
lda ($80),y
pha
rtsJeśli nie podoba Ci się każdorazowy skoko do JNEWDEVC, to pamiętaj, że HATABS jest w RAM-ie i w każdej chwili może być zmieniona (nawet w czasie działania programu, niezależnie od niego).
Funkcja działa dokładnie tak samo jak pierwsza przedstawiona przeze mnie.
Jeśli chcesz wiedzieć, to CIOLIB opisywane w Syzygy #7 korzysta z powyższej metody dla funkcji FGETC i GETC. Dla analogicznych FPUTC i PUTC są prostsze metody.
I to akurat 40%. Pewnie na zlot przybędzie po spożyciu 95% i stwierdzi, że na 100% jest pijany. :mrgreen:
Nie wiem co zapisane jest w rejestrze, ale procesor i pamięć chyba nie. U mnie przy wyświetlaniu włąściwości systemu pojawia się całe okienko, a dopiero po dłuższej chwili namysłu procezsor, zegar i pamięć. Wygląda to tak, jakby testował za każdym razem ( :?: ).
Wersja systemu na pewno jest zapisana w rejestrze, ale nie wiem czy w postaci takiej jak jest pokazywana na ekranie. Może jest to kod wersji?
Wracając do tematu. Najlepsze motody opierają się na specyfikacji systemu i dlatego proponuję jeszcze jedną metodę odczytu klawiatury:
; Initialize reading
ldx #$50 ; open IOCB for Keyboard
lda #$03 ; IOCB open
sta $0342,x ; ICCMD (char)
lda #<kb.id
sta $0344,x ; ICBUFA (ushort)
lda #>kb.id
sta $0345,x
lda #$04 ; open for reading
sta $034A,x
jsr $E456 ; JCIOMAIN
; ...
; some code here
; ...
kb.id .by "K:" 0
; Keyboard reading
getc ldx #$50
lda #$07 ; IOCB get bytes
sta $0342,x
lda #$00
sta $0348,x
sta $0349,x
jmp $E456
; Called by exit() function
kbcls ldx #$50
lda #$0C ; IOCB close
sta #0342,x
jmp $E456Po wyjściu z GETC kod ATASCII znajduje się w akumulatorze.
Powyższą metodą będziemy mieli pewność, że klawiaturę poprawnie odczytamy zawsze, niezależnie od wersji systemu i jego położenia w pamięci (oczywiście pewne adresy muszą być zachowane, np. tablica skoków).
:!: Więcej :!:
:!: Jeśli ktoś przeniesie system operacyjny z Atari na Commodore, to powyższy kod ruszy bez żadnych zmian. :!:
[ Dodano: 15.11.2004 11:35:21 ]
(choc choroba nie mam clicka po nacisnieciu.... badam sprawe).
My Ci zawsze dobrze doradzimy. :) Przy mojej klik musi być!
Nie, by bym napisał DoS. To nie będzie podsystem obsługi dysków, ale system ładowany z dysku. Wyczuwasz, tę subtelną różnicę?
Yhh, to ja zaczynam czarno widzieć tego DOS-a...
A Ty myślisz, żę poco Casper pisze własne sterowniki do Twojego HDD? To nie będzie Dos, a dOS. :D
atari.area forum » Posty przez Lizard
Wygenerowano w 0.127 sekund, wykonano 9 zapytań