CPM książka kucharska

Kącik dla elektroniki retro - układy, urządzenia, podzespoły, literatura itp.
tapy
Newb
Newb
Posty: 64
Rejestracja: niedziela 14 kwie 2019, 17:09
Kontaktowanie:

CPM książka kucharska

Postautor: tapy » poniedziałek 29 sie 2022, 13:15

Skoro mamy już uwolniony ten system do własnych zastosowań, to może warto byśmy stworzyli swoją własną jego kopię. Opis będzie dotyczył CP/M v 2.2 i zapewne będzie on chaotyczny i miejscami pobieżny, ale powinien dać nam ogólną wiedzę jak takie coś przygotować do własnego sprzętu. Fundamentalnym wymaganiem jest mapowanie pamięci RAM od samego jego początku, gdzie zwykle rezyduje pamięć ROM, więc wymagane są sztuczki wyłączające ROM i w jej miejsce umieszczenie RAM w trackie inicjacji systemu operacyjnego. Sam system składa się z dwóch elementów: BDOS i uzależnionego od sprzętu CBIOS. BDOS z wbudowanym interpreterem poleceń CCP jest ogólnie dostępny dzięki rekonstrukcji jakiej dokonał Clark A. Calkins w poprzednim stuleciu (jak to brzmi! :? ), a szkielet CBIOS który tu udostępniam będziemy musieli dostosować do posiadanych urządzeń. Dla uproszczenia przyjąłem adresację standardu RC2014 i jako pamięć masową interface CF (wyłącznik ROM - 0x38, moduł CF - 0x10). Do napisania pozostanie nam tylko inicjacja i obsługa portu szeregowego jako terminala. Wybór konkretnego układu jest uwarunkowany od własnych preferencji i zasobów w szufladzie ;). Sam CBIOS to zbiór 16 funkcji, które w większości już są napisane.

Kod: Zaznacz cały

jp    boot              ;  0 Initialize.       
jp    wboot             ;  1 Warm boot.       
jp    const             ;  2 Console status.   
jp    conin             ;  3 Console input.   
jp    conout            ;  4 Console output.   
jp    list              ;  5 List output.     
jp    punch             ;  6 Punch output.     
jp    reader            ;  7 Reader input.     
jp    home              ;  8 Home disk.       
jp    seldsk            ;  9 Select disk.     
jp    settrk            ; 10 Select track.     
jp    setsec            ; 11 Select sector.   
jp    setdma            ; 12 Set DMA address. 
jp    read              ; 13 Read 128 bytes.   
jp    write             ; 14 Write 128 bytes. 
jp    listst            ; 15 List status.     
jp    sectran           ; 16 Sector translate.

Nasza inicjatywa jest tylko skupiona wokół funkcji 0 - boot, gdzie powinniśmy umieścić kod inicjujący nasz port szeregowy, oraz funkcje 2 - Console status (gotowy/nie), 3 - Console input (sprawdzenie czy coś zostało przyjęte) i 4 - Console output (wysyłanie danych). Pozostałe funkcje są już gotowe! Obsługa przerwań portu szeregowego nie jest wymagana, system i tak korzysta z metody odpytywania i jedyne do czego może się przydać aktywny system przerwań jest sterowanie kontrolą przepływu RTS/CTS dla wyższych prędkości transmisji. Jak widać nie jest to dużo pracy, by móc samodzielnie przygotować ten system do własnego sprzętu. Nie taki diabeł straszny jak go malują :D
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.

Awatar użytkownika
gaweł
Geek
Geek
Posty: 1182
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

Re: CPM książka kucharska

Postautor: gaweł » poniedziałek 29 sie 2022, 14:47

Oj tak, wsparcie się przyda. Ja zamierzam połączyć tą koncepcję z nowym wyposażeniem sprzętowym pod tytułem Motorola 68k. To są dalekosiężne plany i wiem, że czeka mnie sporo pracy. Na początek idzie MC68008, procek 16/32-bitowy z 8-bitową szyną danych. Mam już trochę detali do tego systemu, ale trzeba będzie trochę doprojektować nowego wyposażenia.

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse

Awatar użytkownika
Zegar
User
User
Posty: 236
Rejestracja: wtorek 02 lip 2019, 14:42

Re: CPM książka kucharska

Postautor: Zegar » poniedziałek 29 sie 2022, 15:15

Jest nawet literatura. :D
Literatura.jpg
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."
A. Einstein

tapy
Newb
Newb
Posty: 64
Rejestracja: niedziela 14 kwie 2019, 17:09
Kontaktowanie:

Re: CPM książka kucharska

Postautor: tapy » poniedziałek 29 sie 2022, 15:26

No, w kwestii CP/M-68k to wiele nie jestem w stanie pomóc, to już jest inna filozofia systemu, ale sprawdzając pobieżnie to zapewne jest to do ogarnięcia, tylko ilość funkcji BIOS rośnie do 21. Podejrzewam że warto się przyjrzeć jak to zostało zrobione w 68k-MBC, tam może być wiele wskazówek.

@Zegar - Tak! Literatura. Obowiązkową pozycją jest CPM_2.2_Alteration_Guide_1979, tam jest dość dobrze wyjaśnione jak budować system i czym jest ta zawiła procedura "deblocking".

Awatar użytkownika
gaweł
Geek
Geek
Posty: 1182
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

Re: CPM książka kucharska

Postautor: gaweł » poniedziałek 29 sie 2022, 16:08

tapy pisze:Podejrzewam że warto się przyjrzeć jak to zostało zrobione w 68k-MBC, tam może być wiele wskazówek.

Już się temu przyjrzałem i nie wszystko mi odpowiada. Zostaje realizacja własnej koncepcji.

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse

tapy
Newb
Newb
Posty: 64
Rejestracja: niedziela 14 kwie 2019, 17:09
Kontaktowanie:

Re: CPM książka kucharska

Postautor: tapy » poniedziałek 29 sie 2022, 18:30

Takie są uroki grzebania w 40 letnich systemach operacyjnych. To nie będzie tak ładnie wyglądać jak w przypadku CP/M 2.2, który się doczekał dziesiątków implementacji i można wybierać co ładniejsze kawałki kodu. Tu się ma tylko skrawki które nie wylądowały w koszu, koncepcje i należy się cieszyć że można popatrzeć na coś co działa, nie ważne jak. Moja przygoda z MP/M i CP/Net to pół roku szukania czegokolwiek co sprawiało wrażenie, że opiera się na specyfikacji i niesie jakąś wartościową treść. To dokumentacja z plików txt lub pdf z czcionką maszyny do pisania, rysunki to były perełki ręcznej roboty :D

Awatar użytkownika
gaweł
Geek
Geek
Posty: 1182
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

Re: CPM książka kucharska

Postautor: gaweł » poniedziałek 29 sie 2022, 21:06

tapy pisze:Takie są uroki grzebania w 40 letnich systemach operacyjnych


Przynajmniej zabawa jest fajna i jest trochę "rozkoszy łamania głowy" (co z kolei nie pozwala rdzewieć dla mózgu).
Generalnie nie boję się roboty. Potrzebny jest dostęp do porządnej biblioteki. Książek z CP/M jest też tak trochę, ale chyba nie mam farta, bo to co ściągnąłem to większość jest po francusku, niemiecku lub włosku :(

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse

tapy
Newb
Newb
Posty: 64
Rejestracja: niedziela 14 kwie 2019, 17:09
Kontaktowanie:

Re: CPM książka kucharska

Postautor: tapy » poniedziałek 29 sie 2022, 21:29

Nie wiem jakie są tu limity załączników, więc interesujący Cię odnośnik z kompletem po angielsku: https://www.ndr-nkc.de/compo/68000/cpm68k6.htm

Awatar użytkownika
Zegar
User
User
Posty: 236
Rejestracja: wtorek 02 lip 2019, 14:42

Re: CPM książka kucharska

Postautor: Zegar » wtorek 30 sie 2022, 00:14

tapy pisze: Moja przygoda z MP/M i CP/Net to pół roku szukania czegokolwiek co sprawiało wrażenie, że opiera się na specyfikacji i niesie jakąś wartościową treść.


A to znalazłeś?
http://www.cpm.z80.de/source.html
http://www.cpm.z80.de
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."
A. Einstein

Awatar użytkownika
gaweł
Geek
Geek
Posty: 1182
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

Re: CPM książka kucharska

Postautor: gaweł » wtorek 30 sie 2022, 00:36

tapy pisze:Nie wiem jakie są tu limity załączników, więc interesujący Cię odnośnik z kompletem po angielsku: https://www.ndr-nkc.de/compo/68000/cpm68k6.htm


Oooo, tego nie znałem, dzięki. :D

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse

tapy
Newb
Newb
Posty: 64
Rejestracja: niedziela 14 kwie 2019, 17:09
Kontaktowanie:

Re: CPM książka kucharska

Postautor: tapy » wtorek 30 sie 2022, 01:06

Tak, był jednym z wielu. Prawdziwą kopalnią wiedzy (softu) okazał się ten plik DRIPAK.ZIP oraz źródła projektów P112 i YAZ180 (tu ciekawe wykorzystanie kanałów DMA do transmisji), oraz wiele innych które już nawet nie wiem skąd pobrałem. Problemem okazały się nie kody źródłowe, a pliki binarne które często były wymieszane z wersji 2.0 i 2.1 i tu trzeba było je po kolei porównywać. Jądro MP/M to wiele modułów, a XIOS (odpowiednik CBIOS z CP/M) był jednym z nich. Źródeł było wiele, więc budowa samego systemu nie była szczególnie uciążliwa, prawdziwe schody to był CP/Net. Tu posiłkowałem się przykładami zawartymi w jedynym dokumencie o CP/NET jaki istnieje, mozolnie odtworzonym z plików txt przez Douglasa Millera i pomocy w odszukaniu do niego noty aplikacyjnej przez nieżyjącego już Emmanuela Roche (był prawdziwą skarbnicą dokumentacji) bo musiałem zmodyfikować plik binarny modułu serwera zgodnie z zaleceniami Digital Research. Aplikacja sieciowa dla CP/M i sam CP/NOS to już była bułka z masłem. ;)

Awatar użytkownika
phill2k
User
User
Posty: 264
Rejestracja: niedziela 18 paź 2015, 00:12

Re: CPM książka kucharska

Postautor: phill2k » wtorek 30 sie 2022, 20:27

tapy pisze:Skoro mamy już uwolniony ten system do własnych zastosowań, to może warto byśmy stworzyli swoją własną jego kopię...

Ciekawie się zapowiada, czymam kcuki i czekam na więcej ;)


Wróć do „Retro”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 3 gości