OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů


Právě je 18.04.2024, 10:44

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 13 ] 
Autor Zpráva
 Předmět příspěvku: PP01 - disková jednotka
PříspěvekNapsal: 29.04.2021, 21:05 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 580
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
Setkal se na PP01 někdo s originálním řadičem a disketovkou někdy? V monitoru je přímo příkaz na její použití (Y) ale z toho kódu nejsem vůbec moudrý, pravděpodobně to bylo něco ve stylu PMD32 s vlastním procesorem a sdílelo to paměť s PP01 (od 200h se zapisuje příkaz, pak do paměti si přistupuje automaticky samo zařízení) s velmi zvláštní komunikací na 4 portech (78,79,7B a 7F).
V návodu u příkazu monitoru je napsáno že se zkouší rekalibrace a pak načtení 18 sektorů nulté stopy na adresu 3000h a pak spuštění tohoto kódu, což je taky zvláštní...


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 29.04.2021, 21:17 
Offline
Profík

Registrován: 15.01.2014, 20:08
Příspěvky: 785
Bydliště: Šlapanice
Has thanked: 130 times
Been thanked: 98 times
Ten řadič je na dvou deskách a postaven na řežu I3000, aneb ten řadič je standard s SM50/40 a SM50/40 je kopie strojů od Intelu (iSBC …).

_________________
Ne všichni jsme měli z češtiny za jedna, aneb jsem dyslektik a dysgrafik.

http://www.sapi.cz/


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 29.04.2021, 22:41 
Offline
Radil
Uživatelský avatar

Registrován: 13.05.2013, 17:48
Příspěvky: 529
Bydliště: Košice
Has thanked: 429 times
Been thanked: 265 times
Nestretol som sa osobne s týmto diskovým systémom, ale mali by to byť dosky SM 2151 a SM 2154 (pre 5,25" mechaniky) a ako tu bolo spomenuté, "radič" toho diskového systému je postavený na rezoch 3000.
Pripája sa na zbernicu I41 a pri prenose dát diskový systém prevezme "kontrolu" nad pamäťou v PP 01 a dáta číta, resp. zapisuje priamo z/do pamäte PP 01.
Ten fragment kódu povelu Y vyzerá takto:
Kód:
;------------------------------------------------------------------------------
; Priprava bloku parametrov pre vykonanie konkretnej operacie/povelu (diskovej
; instrukcie).
MonY_Par:   lxi   h,FDPBAdr
      mvi   m,80h      ; kanalove slovo
      inx   h
      mov   m,a      ; diskova instrukcia
      inx   h
      mvi   m,18      ; pocet sektorov
      inx   h
      mvi   m,0      ; stopa
      inx   h
      mvi   m,1      ; sektor
      inx   h
      mvi   m,FloppyBuff&255 ; cielova adresa 3000h
      inx   h
      mvi   m,FloppyBuff/256
      ret

;------------------------------------------------------------------------------
; System sa pokusi precitat z diskovej mechaniky 0 18 sektorov zo stopy 0 na
; adresu 3000h. Najprv sa posle povel (operacia) Recalibracia a potom Citanie
; sektorov.
MonY:      mvi   b,10      ; 10 pokusov
MonY_Loop:   out   FloppyReset   ; zresetuj diskovy system
      in   FloppyStatus   ; zisti, ci je Drive 0 pipraveny
      rrc
      jnc   LEE59      ; ak nie, vrat sa do hlavnej slucky
      call   PrintCRLF   ; odriadkuj na obrazovke
      mvi   a,03h      ; povel: rekalibracia mechaniky 0
      call   MonY_Par   ; priprav povel do pamati
      mvi   a,'I'      ; vypis I na obrazovku
      rst   0
      in   FloppyResType   ; precitaj "naprazdno" typ vysledku
      in   FloppyResult   ; precitaj "naprazdno" vysledok
      mvi   a,FDPBAdr&255   ; adresa, kde je povel: 0200h
      out   FloppyBufL   ; posli na porty
      mvi   a,FDPBAdr/256
      out   FloppyBufH   ; zaroven zahaj operaciu
MonY_W1:   in   FloppyStatus   ; precitaj stav diskoveho systemu
      ani   1<<FlpStatInt   ; pockaj na ukoncenie povelu
      jz   MonY_W1
      in   FloppyResType   ; precitaj typ vysledku
      in   FloppyResult   ; precitaj vysledok
      ora   a      ; Z=1, ak je nulovy - OK
      push   psw      ; odpamataj vysledok na zasobnik
      push   b      ; odpamataj pocet opakovani
      call   PrtHex2      ; vypis kod vysledku
      pop   b      ; obnov pocet opakovani
      pop   psw      ; obnov vysledok
      jnz   MonY_Loop   ; ak sa kalibracia nepodarila, opakuj
      call   PrintCRLF   ; odriadkuj na obrazovke
      mvi   a,04h      ; povel: citanie skupiny sektorov
      call   MonY_Par   ; priprav povel do pamati
      mvi   a,'R'      ; vypis R na obrazovku
      rst   0
      in   FloppyResType   ; precitaj "naprazdno" typ vysledku
      in   FloppyResult   ; precitaj "naprazdno" vysledok
      mvi   a,FDPBAdr&255   ; adresa, kde je povel: 0200h
      out   FloppyBufL   ; posli na porty
      mvi   a,FDPBAdr/256
      out   FloppyBufH   ; zaroven zahaj operaciu
MonY_W2:   in   FloppyStatus   ; precitaj stav diskoveho systemu
      ani   1<<FlpStatInt   ; pockaj na ukoncenie povelu
      jz   MonY_W2
      in   FloppyResType   ; precitaj typ vysledku
      in   FloppyResult   ; precitaj vysledok
      ora   a      ; Z=1, ak je nulovy - OK
      push   psw      ; odpamataj vysledok na zasobnik
      push   b      ; odpamataj pocet opakovani
      call   PrtHex2      ; vypis kod vysledku
      pop   b      ; obnov pocet opakovani
      pop   psw      ; obnov vysledok
      jz   FloppyBuff   ; ak bolo nactanie OK, skoc do kodu
      dcr   b      ; zniz pocet opakovani
      jnz   MonY_Loop   ; a zopakuj
      jmp   PrintCRLF   ; vrat sa cez odriadkovanie na obrazovke

_________________
https://pmd85.borik.net - PMD 85 Emulátor, PMD 85, PMD 32-SD
https://pp01.borik.net - PP 01 Emulátor, PP 01, SD-ROM Modul


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 29.04.2021, 22:57 
Offline
Óm Nejvyšší
Uživatelský avatar

Registrován: 07.07.2019, 22:14
Příspěvky: 3814
Has thanked: 279 times
Been thanked: 456 times
Taky nesetkal ale hodně mě to ideově láká :-). Když se mi podaří externí bednička tak bych do ní rád takovou kartu dal. Dnes už by samozřejmě bylo vhodnější na výrobu než dvojdeskové řezy z i3000 s disketou upravená PMD32 SD co by ty data nahrála do PP dle očekávání a pak už by se dělo co by si autor do těch dat nakódoval.

Řekl bych že to je bude spojené se SMEP operačními systémy protože PP k nim bylo přes Multibus přímo připojitelné, jen proto je na něm naroubovaná taková vyspělá sběrnice (8 MHz frekvence, 20 bit adresace, Master-Slave karty...). Tipnul bych si že ty porty slouží pro řízení vlastností karty na sběrnici a taky je třeba PP oznámit že chceš data zapisovat dovnitř. Takhle Monitor jednak nechává souvislých 12 kB RAM od počátku beze změn, tam už se vejde docela dost 8bit aplikací typu terminál nebo kdoví co. A taky se při vstupu dat zvenku adresa ořízne o horní 3 bity, taky by to mohlo souviset...


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 30.04.2021, 08:14 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 580
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
No a teď obligátní otázka, dochoval se ten zavaděč případně to co to pak natahovalo do PP01? Dokážu si přdestavit nějaké CP/M nebo i rozšíření BASICu.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 30.04.2021, 09:19 
Offline
Óm Nejvyšší
Uživatelský avatar

Registrován: 07.07.2019, 22:14
Příspěvky: 3814
Has thanked: 279 times
Been thanked: 456 times
Jestli se zachoval nějaký bootloader a operační systém co se z té diskety natahoval, to vážně netuším... Nicméně do těch 18 sektorů se může dát cokoliv, takže takový následný program pro startování her/programů ve stylu MNG pro SDROM od RMtýmu by se tam určitě dal vepsat že by to běhalo jakože s disketou a odpadl by SDROM modul a uvolnila by se linka V.24.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 30.04.2021, 09:41 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 580
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
Kdyby to bylo tak jednoduché tak by Roman nevymýšlel nové zařízení ;)


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 30.04.2021, 10:17 
Offline
Óm Nejvyšší
Uživatelský avatar

Registrován: 07.07.2019, 22:14
Příspěvky: 3814
Has thanked: 279 times
Been thanked: 456 times
Podle mě tahle část problému je "kousek koláče" když se jedná o nějaký maličký zavaděč co si pak eventuelně natáhne z dané diskety hlavní program obdobně jako to dělá SDROM modul. Jenže tím zavaděčem to nekončí, jen začíná. A koukám se i na stranu PP-01 a tam je SW podpora nulová.

U SDROM modulu se velmi výhodně dalo využít SW podpora ze strany Basicu/Monitoru pro ROM moduly. A přitom vlastně velice jednoduchá technická realizace - na začátku máš jen standardně podporovanou ROM paměť, ze které si PP definovaným a plně funkčním způsobem načte data a to je celé. Tvůj program se dostane velice lehce do počítače. Následně si zmodifikuješ Basic pro nové příkazy a zapneš V.24 a je to, komunikace ven ti funguje, data dovnitř dostaneš lehce. Není nic jednoduššího.

Při použití I-41 ale nastává výrazné zesložitění. Ani zdaleka ji nemůžeš tak snadno používat a řídit ve stylu SDROM modulu a nemáš žádnou podporu v Basicu. Jestli neexistuje žádné CP/M co by to využilo tak se nedivím že se na podporu takto připojené FDD autoři SDROM modulu vykašlali, protože tu musíš vyřešit napájení, bezpečné oddělení sběrnic, docela divokou 60 pinovu kabeláž (a když to uděláš jako pcb přílepek na konektor, tak na tu sběrnici zase už nedáš nic jiného). A potom implementace řídící logiky Master modulu pro Multibus - FDD sama si řídí přístup do RAM PP-01.

Takže vzato kolem a kolem, já se vůbec nedivím že šli cestou SDROM modulu a raději se škrabali levou rukou za pravým uchem pomocí té V.24 protože s ní si jen spájíš jeden DIN kabel a máš hotovo.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 30.04.2021, 11:58 
Offline
Profík

Registrován: 06.02.2019, 11:47
Příspěvky: 901
Has thanked: 51 times
Been thanked: 230 times
Czech Human píše:
Při použití I-41 ale nastává výrazné zesložitění. Ani zdaleka ji nemůžeš tak snadno používat a řídit ve stylu SDROM modulu a nemáš žádnou podporu v Basicu. Jestli neexistuje žádné CP/M co by to využilo tak se nedivím že se na podporu takto připojené FDD autoři SDROM modulu vykašlali, protože tu musíš vyřešit napájení, bezpečné oddělení sběrnic, docela divokou 60 pinovu kabeláž (a když to uděláš jako pcb přílepek na konektor, tak na tu sběrnici zase už nedáš nic jiného). A potom implementace řídící logiky Master modulu pro Multibus - FDD sama si řídí přístup do RAM PP-01.

V zásade by to boli dosť podobné implementácie. Oddelenie zberníc rieši aj SD ROM, tu by navyše bolo potrebné odchytiť tie 4 porty. Podpora v BASICu pre SD ROM je v podstate v jedinom príkaze. Kým pri SD ROM si Roman vymyslel vlastný komunikačný protokol, tu by sa musel implementovať existujúci, ktorý je asi z veľkej časti neznámy.
M1


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 30.04.2021, 12:55 
Offline
Óm Nejvyšší
Uživatelský avatar

Registrován: 07.07.2019, 22:14
Příspěvky: 3814
Has thanked: 279 times
Been thanked: 456 times
Budu první, kdo takovou implementaci bude podporovat :-).


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 30.04.2021, 16:31 
Offline
Pan Štábní

Registrován: 12.05.2013, 22:24
Příspěvky: 1520
Bydliště: u Prahy
Has thanked: 44 times
Been thanked: 383 times
Na iSBC 80/10 neběhal bez úpravy MDS OS ani ISIS-II, ale existuje port CP/M pro iSBC 80/10 s řadiči:
iSBC 202 - MMFM řadič http://www.nj7p.org/Manuals/PDFs/Intel/9800420A.pdf
iSBC 208 - DSDD FM/MFM, založený na řadiči Intel 8272 http://www.nj7p.org/Manuals/PDFs/Intel/143078-001.pdf
(Existovala ještě 201 a 204).
Zdrojáky úpravy CP/M jsou tady: http://www.nj7p.org/Computers/Software/OS/work/cpm22-i80XX-i20X_v01b.7z


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 30.04.2021, 17:59 
Offline
Radil
Uživatelský avatar

Registrován: 13.05.2013, 17:48
Příspěvky: 529
Bydliště: Košice
Has thanked: 429 times
Been thanked: 265 times
Keď sme začali navrhovať SD-ROM, tak sme hádam o tom diskovom systéme asi ani nevedeli a ja som vôbec nerozumel tej rutine povelu Y v Monitore. Naviac, ani o I-41 zbernici som toho veľa nevedel.
Dnes by som asi skutočne išiel cestou pripojenia nejakého "univerzálneho udělátka" na I-41 zbernicu (ale žiadne rošty) - disk, pamäť, zvuk na jednej doske...
Ani SAA 1099 (MUSE) by som už teda nepripájal na PIO, ale buď interne (využiť 4 nevyužité interné porty) alebo cez I-41 (toto ma teraz mrzí, že som išiel touto PIO cestou).
Teraz je tu už ale jedno...

Neviem, aký diskový systém bol používaný s PP 01 (PP 02). Mohol to byť síce CP/M, ale skôr by som vsadil na ISIS-II (ak sa nemýlim, v Žiline prekrstený na DOS-MVS).
Keďže sa neobjavili žiadne diskety, u ktorých by sa jednoznačne dalo povedať, že patria k PP 01, je ťažké to odhadovať.

_________________
https://pmd85.borik.net - PMD 85 Emulátor, PMD 85, PMD 32-SD
https://pp01.borik.net - PP 01 Emulátor, PP 01, SD-ROM Modul


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PP01 - disková jednotka
PříspěvekNapsal: 30.04.2021, 18:55 
Offline
Profík

Registrován: 15.01.2014, 20:08
Příspěvky: 785
Bydliště: Šlapanice
Has thanked: 130 times
Been thanked: 98 times
Pokut se nepletu tak v SM50/40 je okopírovaná deska iSBC80/20 (http://www.nj7p.info/Manuals/PDFs/Intel/9800317D.pdf )což je jednodeskový počítač s hromadou konfiguračních propojek. Pak se tu dělalo SAPI-80 což je kopie 1:1 iSBC80. Můj osobní typ je že to SAPI-80 přetavili jen na jiný formát desek a konektoru. Někde bych vyhrabal schéma od FDD řadiče ze SAPI-80 a ten byl postaven na I3000 takže je velká pravděpodobnost že stejný řadič bude i v SM50/40 a potažmo PP01. Na SAPI-80 chodil určitě ISIS-II, možná i CP/M.

_________________
Ne všichni jsme měli z češtiny za jedna, aneb jsem dyslektik a dysgrafik.

http://www.sapi.cz/


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 13 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 4 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz