Obsadenie vstupno výstupných adries PMD 85

Z PMD 85 Infoserver

(Rozdiel medzi revíziami)
Djb (Diskusia | príspevky)
(rekat)
Rombor (Diskusia | príspevky)
(Doplnené ďalšie periférie, upravená a doplnená tabuľka)
Riadok 4: Riadok 4:
|-
|-
! width="4%" height="26" |  
! width="4%" height="26" |  
-
! width="6%" | 0
+
! width="6%" | 0x
-
! width="6%" | 1
+
! width="6%" | 1x
-
! width="6%" | 2
+
! width="6%" | 2x
-
! width="6%" | 3
+
! width="6%" | 3x
-
! width="6%" | 4
+
! width="6%" | 4x
-
! width="6%" | 5
+
! width="6%" | 5x
-
! width="6%" | 6
+
! width="6%" | 6x
-
! width="6%" | 7
+
! width="6%" | 7x
-
! width="6%" | 8
+
! width="6%" | 8x
-
! width="6%" | 9
+
! width="6%" | 9x
-
! width="6%" | A
+
! width="6%" | Ax
-
! width="6%" | B
+
! width="6%" | Bx
-
! width="6%" | C
+
! width="6%" | Cx
-
! width="6%" | D
+
! width="6%" | Dx
-
! width="6%" | E
+
! width="6%" | Ex
-
! width="6%" | F
+
! width="6%" | Fx
|-
|-
-
! height="32" | 0
+
! height="32" | x0
| colspan="16" rowspan="4" align="center" valign="middle" nowrap="nowrap" | '''Zakázaná oblasť'''<br />Koliduje so systémovým PIO a ROM modulom <tt>( A3 = A2 = L )</tt><br />Pre <tt>A7 = L</tt> koliduje s internými IF
| colspan="16" rowspan="4" align="center" valign="middle" nowrap="nowrap" | '''Zakázaná oblasť'''<br />Koliduje so systémovým PIO a ROM modulom <tt>( A3 = A2 = L )</tt><br />Pre <tt>A7 = L</tt> koliduje s internými IF
|-
|-
-
! height="32" | 1
+
! height="32" | x1
|-
|-
-
! height="32" | 2
+
! height="32" | x2
|-
|-
-
! height="32" | 3
+
! height="32" | x3
|-
|-
-
! height="32" | 4
+
! height="32" | x4
| colspan="8" rowspan="8" align="center" valign="middle" nowrap="nowrap" | '''Zakázaná oblasť'''<br />Koliduje s internými IF<br />systémovým PIO a ROM modulom
| colspan="8" rowspan="8" align="center" valign="middle" nowrap="nowrap" | '''Zakázaná oblasť'''<br />Koliduje s internými IF<br />systémovým PIO a ROM modulom
| colspan="8" rowspan="4" align="center" valign="middle" nowrap="nowrap" | Systémový PIO<br />''(8255)''
| colspan="8" rowspan="4" align="center" valign="middle" nowrap="nowrap" | Systémový PIO<br />''(8255)''
|-
|-
-
! height="32" | 5
+
! height="32" | x5
|-
|-
-
! height="32" | 6
+
! height="32" | x6
|-
|-
-
! height="32" | 7
+
! height="32" | x7
|-
|-
-
! height="32" | 8
+
! height="32" | x8
| colspan="8" rowspan="4" align="center" valign="middle" nowrap="nowrap" | ROM modul<br />''(8255)''
| colspan="8" rowspan="4" align="center" valign="middle" nowrap="nowrap" | ROM modul<br />''(8255)''
|-
|-
-
! height="32" | 9
+
! height="32" | x9
|-
|-
-
! height="32" | A
+
! height="32" | xA
|-
|-
-
! height="32" | B
+
! height="32" | xB
|-
|-
-
! height="32" | C
+
! height="32" | xC
| rowspan="4" | &nbsp;
| rowspan="4" | &nbsp;
| rowspan="4" align="center" valign="middle" nowrap="nowrap" | MGF,<br />IRPS<br />''(8251)''
| rowspan="4" align="center" valign="middle" nowrap="nowrap" | MGF,<br />IRPS<br />''(8251)''
Riadok 56: Riadok 56:
| rowspan="4" align="center" valign="middle" nowrap="nowrap" | GPIO<br />''(8255)''
| rowspan="4" align="center" valign="middle" nowrap="nowrap" | GPIO<br />''(8255)''
| rowspan="4" align="center" valign="middle" nowrap="nowrap" | Časovač<br />''(8253)''
| rowspan="4" align="center" valign="middle" nowrap="nowrap" | Časovač<br />''(8253)''
-
| rowspan="4" | &nbsp;
+
| align="center" valign="middle" nowrap="nowrap" | VGA-C
| rowspan="4" align="center" valign="middle" nowrap="nowrap" | IMS-2<br />''(8255)''
| rowspan="4" align="center" valign="middle" nowrap="nowrap" | IMS-2<br />''(8255)''
| align="center" valign="middle" nowrap="nowrap" | Myš
| align="center" valign="middle" nowrap="nowrap" | Myš
-
| colspan="6" | &nbsp;
+
| colspan="5" rowspan="4" align="center" valign="middle" nowrap="nowrap" | Uživateľská oblasť<br />(aplikačný konektor)
 +
| align="center" valign="middle" nowrap="nowrap" | MIF 85
| rowspan="4" align="center" valign="middle" nowrap="nowrap" | IF Musica<br />''(8253)''
| rowspan="4" align="center" valign="middle" nowrap="nowrap" | IF Musica<br />''(8253)''
|-
|-
-
! height="32" | D
+
! height="32" | xD
-
| colspan="7" rowspan="3" align="center" valign="middle" nowrap="nowrap" | Uživateľská oblasť<br />(aplikačný konektor)
+
| rowspan="2" | &nbsp;
 +
| rowspan="3" | &nbsp;
|-
|-
-
! height="32" | E
+
! height="32" | xE
 +
| rowspan="2" align="center" valign="middle" nowrap="nowrap" | MIF 85
|-
|-
-
! height="32" | F
+
! height="32" | xF
 +
| align="center" valign="middle" nowrap="nowrap" | RMM
|}
|}
 +
 +
{{-}}
 +
 +
''V nasledujúcom popise je ku každej periférii uvedená tzv. '''Maska adresy portu''' v tvare M/A, kde M je maska portu a A je adresa po aplikovaní masky na požadovanú adresu portu v inštrukciách IN a OUT. Jednotkové bity v maske portu vlastne označujú adresové bity, ktoré sú použité adresovým dekodérom pre výber periférie (ak nejde o masku s hodnotou 0FFh, hovorí sa o neúplnej adresácii portu). Emulátor tieto informácie používa pre "nájdenie" periférie, ktorá má dodať byte pri inštrukcii IN, resp. do ktorej periférie sa má poslať byte pri inštrukcii OUT.''
{{-}}
{{-}}
Riadok 74: Riadok 82:
'''Systémový PIO'''
'''Systémový PIO'''
* klávesnica, zvukový výstup a stránkovanie
* klávesnica, zvukový výstup a stránkovanie
-
* obvod 8255 je vyberaný iba adresným bitom A3 v L, ale vyžaduje sa aj A7=H a A2=H
+
* obvod 8255 je vyberaný iba adresným bitom A3 v L, ale vyžaduje sa aj A7=H a A2=H (maska portu: 8Ch/84h)
* adresné bity A1 a A0 vyberajú príslušný register 8255
* adresné bity A1 a A0 vyberajú príslušný register 8255
-
* používajú sa adresy F4 F7. BASIC programy používajú adresu 86 pre zápis na port C 8255
+
* používajú sa adresy 0F4h 0F7h. BASIC programy používajú adresu 86h (134d) pre zápis na port C 8255
'''ROM modul'''
'''ROM modul'''
* sada EPROM adresovaná cez PIO 8255
* sada EPROM adresovaná cez PIO 8255
-
* obvod 8255 je vyberaný iba adresným bitom A2 v L, ale vyžaduje sa aj A7=H a A3=H
+
* obvod 8255 je vyberaný iba adresným bitom A2 v L, ale vyžaduje sa aj A7=H a A3=H (maska portu: 8Ch/88h)
* adresné bity A1 a A0 vyberajú príslušný register 8255
* adresné bity A1 a A0 vyberajú príslušný register 8255
-
* používajú sa adresy F8 FB
+
* používajú sa adresy 0F8h 0FBh
-
* systémový konektor, na ktorom je pripojený ROM modul nemá, na rozdiel od aplikačného konektoru, obmedzenia na rozsah I/O adries, takže je možné použiť aj adresy z užívateľskej oblasti alebo z oblasti interných interfejsov, ktoré nie sú ešte použité. Toto využívajú moduly PMD 40 (Programátor EPROM) a PMD 50 (Emulátor 8048/8748).
+
* systémový konektor, na ktorom je pripojený ROM modul nemá, na rozdiel od aplikačného konektora, obmedzenia na rozsah I/O adries, takže je možné použiť aj adresy z užívateľskej oblasti alebo z oblasti interných interfejsov, ktoré nie sú ešte použité. Toto využívajú moduly [[PMD 40]] (Programátor EPROM) a [[PMD 50]] (Emulátor 8048/8748).
'''MGF, IRPS'''
'''MGF, IRPS'''
* IF magnetofónu a sériová linka (prúdová slučka) s obvodom USART 8251
* IF magnetofónu a sériová linka (prúdová slučka) s obvodom USART 8251
-
* obvod 8251 je vyberaný adresovými bitmi A7=A6=A5=L, A4=H. Vyžaduje sa A3=A2=A1=H
+
* obvod 8251 je vyberaný adresovými bitmi A7=A6=A5=L, A4=H. Vyžaduje sa A3=A2=H (maska portu: 0FCh/1Ch)
* adresný bit A0 vyberá príslušný register 8251
* adresný bit A0 vyberá príslušný register 8251
-
* používajú sa adresy 1E a 1F
+
* používajú sa adresy 1Eh a 1Fh
'''GPIO'''
'''GPIO'''
* paralelný vstup / výstup s PIO 8255
* paralelný vstup / výstup s PIO 8255
-
* obvod 8255 je vyberaný adresnými bitmi A7=A5=A4=L, A6=H. Vyžaduje sa A3=A2=H
+
* obvod 8255 je vyberaný adresnými bitmi A7=A5=A4=L, A6=H. Vyžaduje sa A3=A2=H (maska portu: 0FCh/4Ch)
* adresné bity A1 a A0 vyberajú príslušný register 8255
* adresné bity A1 a A0 vyberajú príslušný register 8255
-
* používajú sa adresy 4C 4F
+
* používajú sa adresy 4Ch 4Fh
'''Časovač'''
'''Časovač'''
* trojica časovačov s obvodom PIT 8253
* trojica časovačov s obvodom PIT 8253
-
* obvod 8253 je vyberaný adresnými bitmi A7=A5=L, A6=A4=H. Vyžaduje sa A3=A2=H
+
* obvod 8253 je vyberaný adresnými bitmi A7=A5=L, A6=A4=H. Vyžaduje sa A3=A2=H (maska portu: 0FCh/5Ch)
* adresné bity A1 a A0 vyberajú príslušný register 8253
* adresné bity A1 a A0 vyberajú príslušný register 8253
-
* používajú sa adresy 5C 5F
+
* používajú sa adresy 5Ch 5Fh
'''IMS-2'''
'''IMS-2'''
* prístrojový IF HP-IB s PIO 8255
* prístrojový IF HP-IB s PIO 8255
-
* obvod 8255 je vyberaný adresnými bitmi A7=L, A6=A5=A4=H. Vyžaduje sa A3=A2=H
+
* obvod 8255 je vyberaný adresnými bitmi A7=L, A6=A5=A4=H. Vyžaduje sa A3=A2=H (maska portu: 0FCh/7Ch)
* adresné bity A1 a A0 vyberajú príslušný register 8255
* adresné bity A1 a A0 vyberajú príslušný register 8255
-
* používajú sa adresy 7C 7F
+
* používajú sa adresy 7Ch 7Fh
'''Aplikačný konektor - užívateľská oblasť'''
'''Aplikačný konektor - užívateľská oblasť'''
* dátová zbernica je uvoľnená iba pre A7=A3=A2=H
* dátová zbernica je uvoľnená iba pre A7=A3=A2=H
-
* je teda voľných 32 I/O adries (8C-8F, 9C-9F, ..., FC-FF)
+
* je teda voľných 32 I/O adries (8Ch-8Fh, 9Ch-9Fh, ..., 0FCh-0FFh)
'''IF Musica''' (na aplikačnom konektore)
'''IF Musica''' (na aplikačnom konektore)
-
* zvukový IF pre program MUSICA s obvodom PIT 8253
+
* zvukový IF pre program [[MUSICA]] s obvodom PIT 8253
-
* obvod 8253 je vyberaný adresnými bitmi A7=A6=A5=A4=A3=A2=H
+
* obvod 8253 je vyberaný adresnými bitmi A7=A6=A5=A4=A3=A2=H (maska portu: 0FCh/FCh)
* adresné bity A1 a A0 vyberajú príslušný register 8253
* adresné bity A1 a A0 vyberajú príslušný register 8253
* je možný iba zápis do registrov 8253
* je možný iba zápis do registrov 8253
-
* používajú sa adresy FC FF
+
* používajú sa adresy 0FCh 0FFh
'''Myš 602''' (na aplikačnom konektore)
'''Myš 602''' (na aplikačnom konektore)
-
* paralelná myš na porte 8C
+
* port je vyberaný adresnými bitmi A7=A3=A2=H (maska portu: 08Ch/8Ch)
-
* myš využíva pre vyvolanie prerušenia zreťazené časovače CT0 a CT1 (porty 5C, 5D a 5F)
+
* paralelná myš na porte 8Ch
 +
* myš využíva pre vyvolanie prerušenia zreťazené časovače CT0 a CT1 (porty 5Ch, 5Dh a 5Fh)
'''Myš Poly-08''' (na aplikačnom konektore)
'''Myš Poly-08''' (na aplikačnom konektore)
-
* sériová myš na porte 8C (dáta sú na bite DB7), rýchlosť 4800Bd, 8N1
+
* port je vyberaný adresnými bitmi A7=A3=A2=H (maska portu: 08Ch/8Ch)
 +
* sériová myš na porte 8Ch (dáta sú na bite DB7), rýchlosť 4800Bd, 8N1
* myš vyvoláva prerušenie zhruba každých 10ms - v obsluhe prerušenia sa musí prečítať 3 bytový stav myši
* myš vyvoláva prerušenie zhruba každých 10ms - v obsluhe prerušenia sa musí prečítať 3 bytový stav myši
 +
 +
'''VGA-C''' (umiestnený v počítači)
 +
* [[VGA Konvertor]] - [http://www.8bit.8u.cz/Files/Faudraj/index.htm Faudraj v3.1]
 +
* je využitý interný adresový dekodér a VGA Konvertor je vyberaný adresnými bitmi A7=A4=A1=A0=L, A6=A5=H. Vyžaduje sa A3=A2=H (maska portu: 0FFh/6Ch)
 +
* používa sa adresa 6Ch
 +
 +
'''RMM''' (namiesto ROM Modulu)
 +
* [http://www.nostalcomp.cz/pmd_megamodul.php ROM MEGAmodul] postavil Jiří Koutný ([http://www.nostalcomp.cz NOSTALCOMP]) - až 1MB EPROM - 2 x 16 stránok po 32kB.
 +
* obvod 8255 je vyberaný iba adresným bitom A2 v L, ale vyžaduje sa aj A7=H a A3=H (maska portu: 8Ch/88h)
 +
* adresné bity A1 a A0 vyberajú príslušný register 8255
 +
* port pre voľbu stránky je vyberaný adresnými bitmi A7=A4=L, A6=A5=A3=A2=A1=A0=H (maska portu: 0FFh/6Fh)
 +
* používajú sa adresy 0F8h až 0FBh a 6Fh
 +
 +
'''[[MIF 85]]''' (na aplikačnom konektore)
 +
* Zvukový (hudobný) interfejs s SAA1099P
 +
* interfejs je vyberaný adresnými bitmi A7=A6=A5=A3=A2=H, A4=L (maska portu: 0FCh/0ECh)
 +
* adresné bity A1 a A0 vyberajú príslušný interfejsu
 +
* interfejs využíva aj interný časovač 0 pre pravidelné generovanie prerušenia
 +
* používajú sa adresy 0ECh, 0EEh, 0EFh, 5Ch a 5Fh
 +
[[Category:Hardvér]]
[[Category:Hardvér]]
[[Category:Detaily o PMD 85 a kompatibilných]]
[[Category:Detaily o PMD 85 a kompatibilných]]

Verzia zo dňa a času 21:22, 22. december 2013

Tabuľka obsadenia vstupno / výstupných adries na PMD 85

  0x 1x 2x 3x 4x 5x 6x 7x 8x 9x Ax Bx Cx Dx Ex Fx
x0 Zakázaná oblasť
Koliduje so systémovým PIO a ROM modulom ( A3 = A2 = L )
Pre A7 = L koliduje s internými IF
x1
x2
x3
x4 Zakázaná oblasť
Koliduje s internými IF
systémovým PIO a ROM modulom
Systémový PIO
(8255)
x5
x6
x7
x8 ROM modul
(8255)
x9
xA
xB
xC   MGF,
IRPS
(8251)
    GPIO
(8255)
Časovač
(8253)
VGA-C IMS-2
(8255)
Myš Uživateľská oblasť
(aplikačný konektor)
MIF 85 IF Musica
(8253)
xD    
xE MIF 85
xF RMM


V nasledujúcom popise je ku každej periférii uvedená tzv. Maska adresy portu v tvare M/A, kde M je maska portu a A je adresa po aplikovaní masky na požadovanú adresu portu v inštrukciách IN a OUT. Jednotkové bity v maske portu vlastne označujú adresové bity, ktoré sú použité adresovým dekodérom pre výber periférie (ak nejde o masku s hodnotou 0FFh, hovorí sa o neúplnej adresácii portu). Emulátor tieto informácie používa pre "nájdenie" periférie, ktorá má dodať byte pri inštrukcii IN, resp. do ktorej periférie sa má poslať byte pri inštrukcii OUT.


Systémový PIO

  • klávesnica, zvukový výstup a stránkovanie
  • obvod 8255 je vyberaný iba adresným bitom A3 v L, ale vyžaduje sa aj A7=H a A2=H (maska portu: 8Ch/84h)
  • adresné bity A1 a A0 vyberajú príslušný register 8255
  • používajú sa adresy 0F4h až 0F7h. BASIC programy používajú adresu 86h (134d) pre zápis na port C 8255

ROM modul

  • sada EPROM adresovaná cez PIO 8255
  • obvod 8255 je vyberaný iba adresným bitom A2 v L, ale vyžaduje sa aj A7=H a A3=H (maska portu: 8Ch/88h)
  • adresné bity A1 a A0 vyberajú príslušný register 8255
  • používajú sa adresy 0F8h až 0FBh
  • systémový konektor, na ktorom je pripojený ROM modul nemá, na rozdiel od aplikačného konektora, obmedzenia na rozsah I/O adries, takže je možné použiť aj adresy z užívateľskej oblasti alebo z oblasti interných interfejsov, ktoré nie sú ešte použité. Toto využívajú moduly PMD 40 (Programátor EPROM) a PMD 50 (Emulátor 8048/8748).

MGF, IRPS

  • IF magnetofónu a sériová linka (prúdová slučka) s obvodom USART 8251
  • obvod 8251 je vyberaný adresovými bitmi A7=A6=A5=L, A4=H. Vyžaduje sa A3=A2=H (maska portu: 0FCh/1Ch)
  • adresný bit A0 vyberá príslušný register 8251
  • používajú sa adresy 1Eh a 1Fh

GPIO

  • paralelný vstup / výstup s PIO 8255
  • obvod 8255 je vyberaný adresnými bitmi A7=A5=A4=L, A6=H. Vyžaduje sa A3=A2=H (maska portu: 0FCh/4Ch)
  • adresné bity A1 a A0 vyberajú príslušný register 8255
  • používajú sa adresy 4Ch až 4Fh

Časovač

  • trojica časovačov s obvodom PIT 8253
  • obvod 8253 je vyberaný adresnými bitmi A7=A5=L, A6=A4=H. Vyžaduje sa A3=A2=H (maska portu: 0FCh/5Ch)
  • adresné bity A1 a A0 vyberajú príslušný register 8253
  • používajú sa adresy 5Ch až 5Fh

IMS-2

  • prístrojový IF HP-IB s PIO 8255
  • obvod 8255 je vyberaný adresnými bitmi A7=L, A6=A5=A4=H. Vyžaduje sa A3=A2=H (maska portu: 0FCh/7Ch)
  • adresné bity A1 a A0 vyberajú príslušný register 8255
  • používajú sa adresy 7Ch až 7Fh

Aplikačný konektor - užívateľská oblasť

  • dátová zbernica je uvoľnená iba pre A7=A3=A2=H
  • je teda voľných 32 I/O adries (8Ch-8Fh, 9Ch-9Fh, ..., 0FCh-0FFh)

IF Musica (na aplikačnom konektore)

  • zvukový IF pre program MUSICA s obvodom PIT 8253
  • obvod 8253 je vyberaný adresnými bitmi A7=A6=A5=A4=A3=A2=H (maska portu: 0FCh/FCh)
  • adresné bity A1 a A0 vyberajú príslušný register 8253
  • je možný iba zápis do registrov 8253
  • používajú sa adresy 0FCh až 0FFh

Myš 602 (na aplikačnom konektore)

  • port je vyberaný adresnými bitmi A7=A3=A2=H (maska portu: 08Ch/8Ch)
  • paralelná myš na porte 8Ch
  • myš využíva pre vyvolanie prerušenia zreťazené časovače CT0 a CT1 (porty 5Ch, 5Dh a 5Fh)

Myš Poly-08 (na aplikačnom konektore)

  • port je vyberaný adresnými bitmi A7=A3=A2=H (maska portu: 08Ch/8Ch)
  • sériová myš na porte 8Ch (dáta sú na bite DB7), rýchlosť 4800Bd, 8N1
  • myš vyvoláva prerušenie zhruba každých 10ms - v obsluhe prerušenia sa musí prečítať 3 bytový stav myši

VGA-C (umiestnený v počítači)

  • VGA Konvertor - Faudraj v3.1
  • je využitý interný adresový dekodér a VGA Konvertor je vyberaný adresnými bitmi A7=A4=A1=A0=L, A6=A5=H. Vyžaduje sa A3=A2=H (maska portu: 0FFh/6Ch)
  • používa sa adresa 6Ch

RMM (namiesto ROM Modulu)

  • ROM MEGAmodul postavil Jiří Koutný (NOSTALCOMP) - až 1MB EPROM - 2 x 16 stránok po 32kB.
  • obvod 8255 je vyberaný iba adresným bitom A2 v L, ale vyžaduje sa aj A7=H a A3=H (maska portu: 8Ch/88h)
  • adresné bity A1 a A0 vyberajú príslušný register 8255
  • port pre voľbu stránky je vyberaný adresnými bitmi A7=A4=L, A6=A5=A3=A2=A1=A0=H (maska portu: 0FFh/6Fh)
  • používajú sa adresy 0F8h až 0FBh a 6Fh

MIF 85 (na aplikačnom konektore)

  • Zvukový (hudobný) interfejs s SAA1099P
  • interfejs je vyberaný adresnými bitmi A7=A6=A5=A3=A2=H, A4=L (maska portu: 0FCh/0ECh)
  • adresné bity A1 a A0 vyberajú príslušný interfejsu
  • interfejs využíva aj interný časovač 0 pre pravidelné generovanie prerušenia
  • používajú sa adresy 0ECh, 0EEh, 0EFh, 5Ch a 5Fh