La Place des Développeurs Liste des Ports Entrées / Sorties
Les ports d'entrées sorties
Citation :
-------------------------------------------------------------------------------
MSX I/O POORTEN (&h00 - &hFF) COMPASS v1.0 (c) 1994 COMPJOETANIA
-------------------------------------------------------------------------------
Samensteller: Compjoetania, Eric van Beurden
Bron : Diversen boeken en personen (o.a. Henrik Gilvad)
Versie : #1.00
De MSX I/O poorten zijn in assembly als volgt aan te sturen:
Read_Poort: IN A,(&Hxx) ;&Hxx = Poort nummer (0-255)
BIT A,x ; x = Bit nummer (0-7) om te testen
JP NZ,bitGeset
Write_Poort: LD A,&Hxx ;&Hxx = Data
OUT (&Hxx),A ;&Hxx = Poort nummer (0-255)
De I/O adressen &H00 tot en met &H3F zijn vrij en mogen gebruikt worden om
zelf randapperatuur aan te koppelen.
00-01 x:Philips Muziek Module MIDI 6850
Het decoderen van de hardware adressen wordt er langzaam gedaan. Dit
zijn de decoderings gebieden:
00,08,10,18 ACIA 6850 Write Use #00 or #10
01,09,11,19 ACIA 6850 Write Use #01 or #11
04,0C,14,1C ACIA 6850 Read
05,0D,15,1D ACIA 6850 Read
08-0F,18-1F 8 bit D/A Converter. Use #A-B,#E-F, #1A-1B,#1E-1F
Dit betekend dat het niet goed samenwerkt met andere cartridges die
dezelfde I/O gebieden gebruiken van #00-#1F behaleve 2,3,6,7,#12,
#13,#16,#17.
00-07 x:MT modem
08-7F x:MT modem spiegelregisters (d.m.v. jumpers)
09-0D x:?
0F x:Mega RAM/ROM
10-17 x:?
18-19 x:Barcode reader NMS 1170/20 Philips
#18 R :Bit 0-6 ASCII code, barcode cijfer of code ID
:Bit 7 Status buffer (0) Barcode staat gereed, (1) Einde
barcode
W :Bit 0-5 Data bits
Bit 6-7 Commando bits
#19 :?
20-27 x:Modem NMS 1250 Philips 2e instelling
28-29 x:
30-37 x:-Modem NMS 1250 Philips
-Modem Miniware
-CD ROM interface Philips
-Op Turbo R GT vrij!!
-SCSI interfaces van HSH,MAK en HG
#34 R :WD33C93A 'Auxiliary Status'
W :WD33C93A Adres register (registers 00-1F)
#35 R/W :WD33C93A Data
#36 W :Wanneer data naar deze poort geschreven wordt dan wordt
er een Reset pule gegenereerd op de SCSI BUS naar de SCSI
chip! (Aprox 50usec.)
#36 R :Op de orginele SCSI interface van HSH was een schakelblok
aanwezig met 8 schakelingen. Deze kunnen gelezen worden
door deze poort.
#37 :Bij sommige interfaces is poort 37 gelijk aan poort 36
maar wordt alleen poort 36 gebruikt.
38-3F x:RS232 NMS 1210 Philips
De I/O adressen &H40 tot en met &HFF zijn gereserveerd voor intern gebruik
binnen het MSX-systeem.
S1985 MSX engine back-up RAM (internally, 8bit x 16)
40 1:Maker identity byte
41 x:Adres register 00-0F
42 x:Data register
43-45 x:
S1985 MSX engine help circuit for faster PUT KANJI.
46 x:Voor en Achtergrond kleur
47 x:Bitpatroon voor de kleuren
48-5F x:
60-6F 2:Graphics 9000 (GFX9000), Video Display Processor V9990
#60 R/W :Poort #0 VRAM data
#61 R/W :Poort #1 Palet data
#62 R/W :Poort #2 Commando data
#63 R/W :Poort #3 Data register inhoud read/write
#64 W :Poort #4 Register write
#65 R :Poort #5 Status
#66 R/W :Poort #6 Interrupt vlag
#67 W :Poort #7 Systeem controle
#68 W :Poort #8 Primair stand. kanji ROM laagste adres
#69 R/W :Poort #9 Primair stand. kanji ROM hoogste adres + data
#6A R :Poort #A Secun. stand. kanji ROM laagste adres
#6B R/W :Poort #B Secun. stand. kanji ROM hoogste adres + data
Poorten 68-6B zijn alleen op het V9990 evaluation board aanwezig, niet
op de GFX9000! Dit in verband met het ontbreken van een Kanji ROM op
de GFX9000.
#6C-#6D :Poort #C-D Gereserveerd
#6F W :SuperImpose chip V7040
Bit 0 =alleen V9990 output
Bit 1 =sets MIX mode.
Opm. Schrijf 0 naar #6F voor alleen GFX9000!
De poort 6F is alleen op de GFX9000 aanwezig! Op het evaluation board
is namelijk geen superimpose chip aanwezig.
70-7B x:
7C-7D +:MSX Music, OPLL
#7C W :Register
#7D W :Register data
7E-7F x:Moonsound, OPL4 Wavetable part.
#7E W :Register
#7F R/W :Register data
80-87 1:RS232 interface
#80 R/W :i-8251 gegevenstransmissie
#81 R/W :i-8251 commando/statusregister
#82 R :toestand van de RS232-verbinding
#83 W :interruptmasker
i-8253 programmable timer
#84 R/W :i-8253 teller 0
#85 R/W :i-8253 teller 1
#86 R/W :i-8253 teller 2
#87 W :i-8253 instelling
88-8B 2:MSX2 V9938 adaptor voor de MSX1 V9929 (neos)
8C-8D x:Modem MSX van Sony
8E-8F x:Gereserveerd
90-91 2:Printer interface
#90 W :bit0 = strobe
R :bit1 = status
#91 W :Code van te printen teken
92 x:?
93 2:Printer busdirection. De S1985 (MSX-Engine) is voorbereid op een
Redirectionale printerpoort! Het vereist extra externe chips maar geen
bestaande MSX model heeft het ooit gebruikt.
#93 :bit 0-1 are used to control the mode.
0 0 /PRST release
0 1 /PRST ouput
1 0 Input state or /PRS release
1 1 Output state or /PRST release
Zie het S1985 MSX SYSTEM 2 Application manual pagina 13-14.
98-9B +:Video Display Processor (VDP), type V9938, V9958
#98 R/W :Poort #0, Vram
#99 R :Poort #1, Status register
W Register/Register data
W Vram adres
#9A W :Poort #2, Palet
#9B W :Poort #3, Indirect access
9C-9F x:Gereserveerd
A0-A2 1:General Instruments AY-3-8910 Programmabele Sound Generator (PSG)
3A0 W :Register
#A1 W :Register data (W)
#A2 R :Register data (R)
A4-A5 R:PCM, D/A converter
#A4 W /A Converter. Beide gebruikt tijdens het opnemen en af-
spelen van PCM.
R :Bit 0-1 Teller 16 Khz. Gebruikt door sampler
Bit 2-7 Ongebruikt
#A5 W :Bit 0 ? Altijd gezet met bit 1, gereset tijdens sampling?
Bit 1 Muting: (1) geluid aan (0) geluid uit
Bit 2 Filter (1=on) meestal gebruikt tijdens sampling
Bit 3 Select: (1) Mic/Jack (0) D/A Converter
Bit 4 Sample/Hold: (1) stores a value which the
Comperator will womper to the output of the DAC
during sampling
Bit 5-7 Ongebruikt
R :Bit 0 ? Altijd gezet met bit 1, gereset tijdens sampling?
Bit 1 Muting: (1) geluid aan (0) geluid uit
Bit 2 Filter (1=on) meestal gebruikt tijdens sampling
Bit 3 Select: (1) Mic/Jack (0) D/A Converter
Bit 4 Sample/Hold: (1) stores a value which the
Comperator will womper to the output of the DAC
during sampling
Bit 5-6 Ongebruikt
Bit 7 Comperator result.
A6 R:?
A7 R:Ledjes van Turbo R display
#A7 W :Bit 0 Pauze led: (0) uit, (1) aan
Bit 7 Turbo led: (0) uit, (1) aan
R :Bit 0 Detecteert of de PAUSE toets ingedrukt is: (1) is
ingedrukt
A8-AB 1:Intel 8255 Programmable Peripheral Interface (PPI)
#A8 R/W :PPI Poort A :Primary slotselect register
#A9 R :PPI Poort B :Deze poort wordt gebruikt om de 8 bits rij te
lezen van de op dat ogenblik afgetast rij van het keyboard
Het is geconstruktureerd als een matrix van 11 rijen van
elk 8 bits breed. Op de Turbo R worden alle 11 de rijen
bezet. (De 11e rij is o.a. voor het uitlezen van de
interne software schakellaar die naast de reset knop zit)
#AA R/W :PPI Poort C :Diversen functies
Bit 0-3 Bepaald welke rij op het toetsenbord (0 t/m 11)
door poort B ingelezen moet worden
Bit 4 Het cassettemoter bit, bepaalt de stand van het
relais dat de cassettemoter schakelt: (0) aan,
(1) uit
Bit 5 Het cassette output bit, wordt gefilterd en
verzwakt voordat het naar de DIN plug gaat, als
het signaal voor de cassetterecorder. Alle
cassettesignalen worden via software gegenereerd.
Bit 6 Het CAPS bit, bepaalt de stand van het lampje bij
de hoofdletter toets: (0) aan, (1) uit
Bit 7 Bepaalt het geluid dat gemaakt wordt bij het
indrukken van een toets. Het wordt verzwakt en
gemengd met het signaal van de geluidsgenerator.
Om een geluid voort te brengen, moet dit bit
voortdurend tussen 0 en 1 heen wen weer gezet
worden.
#AB W :Mode register. Deze poort regelt de werking van de PPI.
De MSX hardware werd ontworpen om in een bepaalde
configuratie te werken. Het wijzigen van deze poorten is
dus niet nodig en zeer gevaarlijk. Men kan er de PPI
zelfs mee opblazen!
Bit 0 C-direction bit bepaalt in welke richting de
laagste vier bits van poort C werken: (0) output
(MSX), (1) input
Bit 1 B-direction bit bepaalt de richting voor poort B:
(0) output, (1) input (MSX)
Bit 2 'B & C mode' bit bepaalt de manier waarop poort B
werkt en de laagste vier bits van poort C: (0)
normale werking (MSX), (1) strobe mode
Bit 3 C-direction bit bepaalt in welke richting de
hoogste vier bits van poort C werken: (0) output
(MSX), (1) input
Bit 4 A-direction bit bepaalt de richting voor poort A:
(0) output (MSX), (1) input
Bit 5-6 'A & C mode' bit bepalen de werking van poort A,
en de vier hoogste bits van poort C: (00) normale
werking (MSX), (01) strobe mode, (10) tweerich-
tings verkeer
Bit 7 Mode bit: (1) men kan door middel van bit 0-6 de
mode waarin de PPI werkt wijzigen, (0) Nu krijgt
het Mode register een hele andere functie! Deze
poort kan nu gebruikt worden om rechtstreeks een
bit van poort C te (re-)setten. De bits van de
Mode poort hebben als bit7 0 is de volgende
functie: Bit 0 Reset/set bit: (0) reset, (1) set
Bit 1-3 Bepaalt het bit van register C,
mogelijke waarde zijn 0 t/m 7
Bit 4-6 Niet in gebruik
Door de instructie OUT &hAB,&b00001100 kan het
CAPS-lock lampje worden aangezet
AC-AF 2:MSX Engine (welke ? niet S1990 of S1985!)
B0-B3 1:HBI-55 (8255) data catridge SONY
#B0 R/W :Poort A adreslijn A0-A7
#B1 R/W :Poort B adreslijn A8-A10, A13-A15, Control, R/W
#B2 R/W :Poort C adreslijn A11-A12, datalijnen D0-D7
#B3 :Control wordt 8255 WR
B4-B5 2:Clockchip interface (RP 5C01)
#B4 W :Register/block
#B5 R/W :Register data
B6-B7 x:Card reader
B8-BB 2:-Lichtpen interface Sony
-Barcode reader NMS 1190/20 (b8/9)
BC-BF 2:Video controller JVC (VHD)
C0-C1 2:MSX Audio
#C0 W :Register
R Status register
#C1 W :Register data
C2-C3 2:MSX-Audio 2e instelling
#C0 W :Register
R Status register
#C1 W :Register data
C4-C7 2:Moonsound (OPL4), het FM-gedeelte
#C4 W :Register
R Status register
#C5 R/W :Register data
#C6 W :Register (2.nd register block)
#C7 R/W :Register data (2.nd register block)
C8-CC 2:MSX interface. De MSX interface is een 8255 interface voor
communicatie tussen 2 MSX computers. Het SUBROM initialiseerd deze
poorten als een 8255.
CD-CF x:
D0-D7 2:Floppy controller ATV (Diskdrive)
#D6 :in Use
#D7 :Motor on
2:MK SCSI harddisk interface
R:Turbo R GT, There is a circuit in the GT which will cancell all I/O
to port #D0-#DF, that is probably because of the Kanji ROM's. If
external KanjiROM cartridges is put in the Turbo R and there is
differences in the ROM's then the ROM's would be in danger. This
circuit is probably not in the A1ST!
D8-D9 2:Kanji ROM 1
#D8 W :Adreslijnen A5-A0 LSB
#D9 W :Adreslijnen A5-A0 MSB
R :Datalijnen D7-D0
DA-DB 2:Kanji ROM 2 (Uitbreiding)
#DA W :Adreslijnen A5-A0 LSB
#DB W :Adreslijnen A5-A0 MSB
R :Datalijnen D7-D0
DC R:Kanji ROM 24 dot (output, sets the address)
DD x:Font data
DE-DF x:Gereserveerd
E0-E2 R:MSX MIDI cartridge
#E0 R/W :Data
#E1 W :Command
R :Status register
#E2 W :Select. I believe that this port can be used to change the
port between E0-E1 and E8-E9 or perhaps just to enable it.
I know that bit 0 is used but I don't know the exact
function.
E3-E5 R:Turbo R MSX-Engine S1990
#E3 :?
#E4 W :Register write
#E5 R/W :Data register inhoud read/write
register 5: de schakellaar 00=rechts
64=links
register 6: de processor 00=R800 DRAM
64=R800 ROM
96=Z80
register 13: ? (3 perhaps a primary slot # ?)
register 14: ? (47 ?)
register 15: ? (139 = 10001011, perhaps a slotID?)
E6-E7 R:System Timer, 16-bit counter van ongeveer 250 KHz.
#E6 R :LSB
#E7 R :MSB
E8-E9 R:MSX-MIDI interface (8251 chip, same as used in RS232)
#E8 R/W :MIDI data
#E9 W :Command
Bit 0 MIDI out enable
Bit 1 MIDI timer enable. (Interrupt enable !)
Bit 2 MIDI in enable.
Bit 5 Enable interrupt for received MIDI data.
To initialise the 8251 first write a Mode Select Byte and then
a Command Select Byte. After this the chip will be in the Command
Select mode until bit 6 (Internal Reset) is set.
0 1 0 0 1 1 1 0 (Used for MIDI operation)
XWWRWWRWWRWWWRWWRWWRWWRWWY
W VS2VS1VEPVPENVL2VL2VB2VB1V Mode Select Byte.
ZWWQWWQWWQWWWQWWQWWQWWQWW[ XWWWWRWWWRWWWRWWWY
V V V V V V V ZWWS 0 V 1 V 0 V 1 V
V V V V V V ZWWWWWS 0 V 0 V 1 V 1 V
V V V V V V TWWWWUWWWUWWWUWWWS
V V V V V V VSyncV *1V*16V*64V
V V V V V V ZWWWWQWWWQWWWQWWW[
V V V V V V Character Length
V V V V V V XWWWRWWWRWWWRWWWY
V V V V V ZWWWWWWWWS 0 V 1 V 0 V 1 V
V V V V ZWWWWWWWWWWWS 0 V 0 V 1 V 1 V
V V V V TWWWUWWWUWWWUWWWS
V V V V V 5 V 6 V 7 V 8 V Data Bits
V V V V ZWWWQWWWQWWWQWWW[
V V V ZWWWWWWWWWWWWWWW Parity Enable. 1 = enabled.
V V ZWWWWWWWWWWWWWWWWWW Even Parity generation / check
V V 1 = Even parity. 0 = Odd parity
V V
V V Stop bits
V V XWWWRWWWRWWWRWWWY
V ZWWWWWWWWWWWWWWWWWWWWWS 0 V 1 V 0 V 1 V
ZWWWWWWWWWWWWWWWWWWWWWWWWS 0 V 0 V 1 V 1 V
TWWWUWWWUWWWUWWWS
V---V 1 V1.5V 2 V Stop Bits
ZWWWQWWWQWWWQWWW[
Command Select Byte (after Mode Select Byte!)
1 Bit 0 TxEN Transmit Enable (0) disable, (1) enable
1 Bit 1 DTR DTR pin. 1: pin=0. (Active)
1 Bit 2 RxE Receive Enable (0) disable, (1) enable
0 Bit 3 SBRK Send Break Characters (0) Normal transmision,
(1) Send Break Characters (TxD low)
0 Bit 4 ER Error Reset (1) reset flags PE,OE,FE
1 Bit 5 RTS RTS pin. 1 = RTS active low.
0 Bit 6 IR Internal Reset (1) returns to Mode Instruction
0 Bit 7 EH Enter Hunt Mode (1) search for Sync Char. (not used)
R :Status register
Bit 0 TxRDY (1)=ready for TX chars.
Bit 1 RxRdy (1)=Byte in receive buffer
Bit 2 TxEmpty (1)=Transmitter is empty
(0)=Transmitteris sending data
Bit 3 PE (1)=Parity Error
Bit 4 OE (1)=Overrun error (data lost)
Bit 5 FE Framing error. (no Stop bit)
Bit 6 SynDet (1)=SYNC char detected in SYNC mode. (MIDI
is ASYNC)
Bit 7 DSR input pin
DSR pin is connected to the 8254 TIMER interrupt output. If interrupt
have been disabled then we can read this bit to detect TIMER interupt.
The A1GT interrupt handler uses bit 7 to detect Timer interrupt and
bit 1 to detect MidiRx interrupt.
EA-EB R:Used to Clear the 8254 timerinterrupt. Done by writing any value.
EC-EF R:8254 chip. De 8254 is net als de 8253 een timer, maar heeft verbeterde
mogelijkheden om de timerwaardes uit te lezen en kan een hogere
snelheid aan. Note: Timer 1 telt,
Timer 2 'interrupts'.
#EC R/W :Timer 0, Input Clock 4MHz. Output 8251 Clock
#ED R/W :Timer 1, Input Timer 2. Geen output. (Alleen Software)
#EE R/W :Timer 2, Input Clock 4MHz. Output genereerd interrupts.
#EF W :Command
F0-F3 x:Gereserveerd
F4 +:ROM/Cold start Status register
#F4 R/W :bit 7 Wordt gebruikt om een onderscheid te maken tussen
een soft- en hardware reset. (Op de Turbo R wordt
dit bit niet geinventeerd!)
:bit 5 When this bit have been written then it cannot be
reset again by software. It is used by the Bootup
routine to see if it should change the CPU mode.
(I think)
note: Due to the polarity change on Turbo R you should use
the BIOS routines #17A and #17D to Read and Write !
F5 2:System control, met deze poort kan je interne hardware disabele voor
het geval dat een cartridge met dezelfde inhoud in een extern slot
steek. Op een met Kanji ROM's computer (Turbo R) kun je het als volgt
uitproberen: Schakel de Kanji mode in (_kanji0), type OUT &hF5,0, de
Kanji letters zullen nu witte blokjes zijn. Na OUT &hF5,1 is alles
weer normaal.
#F5 W :bit0 Kanji ROM
bit1 Kanji ROM 2
bit2 MSX-Audio
bit3 Super Impose
bit4 MSX-interface
bit5 RS232c interface
bit6 Lichtpen
bit7 Clockchip interface
F6-F7 2:Audio/Video control superimpose !!!!!!!!!!!!!!!!!!!
#F6 R/W :Colorbus control
#F7 :bit0 audio rechts
bit1 audio links
bit2 video input select
bit3 video input sence (lezen)
bit4 A/V control
bit5 Ym control
bit6 Ys control
bit7 Video select
F8 x:Opt palvers bit 8280???!!!!
#F8 :bit0 audio rechts
bit1 audio links
bit2 Gereserveerd
bit3 Rc 5 int
bit4 Sound
bit5 Sound
bit6 Gereserveerd
bit7 Gereserveerd
F9-FB x:Gereserveerd
FC-FF 2:Memory mapper
#FC W :Page 0, (&H0000-&H3FFF)
#FD W :Page 1, (&H4000-&H7FFF)
#FE W :Page 2, (&H8000-&HBFFF)
#FF W :Page 3, (&HC000-&HFFFF)
MSX I/O POORTEN (&h00 - &hFF) COMPASS v1.0 (c) 1994 COMPJOETANIA
-------------------------------------------------------------------------------
Samensteller: Compjoetania, Eric van Beurden
Bron : Diversen boeken en personen (o.a. Henrik Gilvad)
Versie : #1.00
De MSX I/O poorten zijn in assembly als volgt aan te sturen:
Read_Poort: IN A,(&Hxx) ;&Hxx = Poort nummer (0-255)
BIT A,x ; x = Bit nummer (0-7) om te testen
JP NZ,bitGeset
Write_Poort: LD A,&Hxx ;&Hxx = Data
OUT (&Hxx),A ;&Hxx = Poort nummer (0-255)
De I/O adressen &H00 tot en met &H3F zijn vrij en mogen gebruikt worden om
zelf randapperatuur aan te koppelen.
00-01 x:Philips Muziek Module MIDI 6850
Het decoderen van de hardware adressen wordt er langzaam gedaan. Dit
zijn de decoderings gebieden:
00,08,10,18 ACIA 6850 Write Use #00 or #10
01,09,11,19 ACIA 6850 Write Use #01 or #11
04,0C,14,1C ACIA 6850 Read
05,0D,15,1D ACIA 6850 Read
08-0F,18-1F 8 bit D/A Converter. Use #A-B,#E-F, #1A-1B,#1E-1F
Dit betekend dat het niet goed samenwerkt met andere cartridges die
dezelfde I/O gebieden gebruiken van #00-#1F behaleve 2,3,6,7,#12,
#13,#16,#17.
00-07 x:MT modem
08-7F x:MT modem spiegelregisters (d.m.v. jumpers)
09-0D x:?
0F x:Mega RAM/ROM
10-17 x:?
18-19 x:Barcode reader NMS 1170/20 Philips
#18 R :Bit 0-6 ASCII code, barcode cijfer of code ID
:Bit 7 Status buffer (0) Barcode staat gereed, (1) Einde
barcode
W :Bit 0-5 Data bits
Bit 6-7 Commando bits
#19 :?
20-27 x:Modem NMS 1250 Philips 2e instelling
28-29 x:
30-37 x:-Modem NMS 1250 Philips
-Modem Miniware
-CD ROM interface Philips
-Op Turbo R GT vrij!!
-SCSI interfaces van HSH,MAK en HG
#34 R :WD33C93A 'Auxiliary Status'
W :WD33C93A Adres register (registers 00-1F)
#35 R/W :WD33C93A Data
#36 W :Wanneer data naar deze poort geschreven wordt dan wordt
er een Reset pule gegenereerd op de SCSI BUS naar de SCSI
chip! (Aprox 50usec.)
#36 R :Op de orginele SCSI interface van HSH was een schakelblok
aanwezig met 8 schakelingen. Deze kunnen gelezen worden
door deze poort.
#37 :Bij sommige interfaces is poort 37 gelijk aan poort 36
maar wordt alleen poort 36 gebruikt.
38-3F x:RS232 NMS 1210 Philips
De I/O adressen &H40 tot en met &HFF zijn gereserveerd voor intern gebruik
binnen het MSX-systeem.
S1985 MSX engine back-up RAM (internally, 8bit x 16)
40 1:Maker identity byte
41 x:Adres register 00-0F
42 x:Data register
43-45 x:
S1985 MSX engine help circuit for faster PUT KANJI.
46 x:Voor en Achtergrond kleur
47 x:Bitpatroon voor de kleuren
48-5F x:
60-6F 2:Graphics 9000 (GFX9000), Video Display Processor V9990
#60 R/W :Poort #0 VRAM data
#61 R/W :Poort #1 Palet data
#62 R/W :Poort #2 Commando data
#63 R/W :Poort #3 Data register inhoud read/write
#64 W :Poort #4 Register write
#65 R :Poort #5 Status
#66 R/W :Poort #6 Interrupt vlag
#67 W :Poort #7 Systeem controle
#68 W :Poort #8 Primair stand. kanji ROM laagste adres
#69 R/W :Poort #9 Primair stand. kanji ROM hoogste adres + data
#6A R :Poort #A Secun. stand. kanji ROM laagste adres
#6B R/W :Poort #B Secun. stand. kanji ROM hoogste adres + data
Poorten 68-6B zijn alleen op het V9990 evaluation board aanwezig, niet
op de GFX9000! Dit in verband met het ontbreken van een Kanji ROM op
de GFX9000.
#6C-#6D :Poort #C-D Gereserveerd
#6F W :SuperImpose chip V7040
Bit 0 =alleen V9990 output
Bit 1 =sets MIX mode.
Opm. Schrijf 0 naar #6F voor alleen GFX9000!
De poort 6F is alleen op de GFX9000 aanwezig! Op het evaluation board
is namelijk geen superimpose chip aanwezig.
70-7B x:
7C-7D +:MSX Music, OPLL
#7C W :Register
#7D W :Register data
7E-7F x:Moonsound, OPL4 Wavetable part.
#7E W :Register
#7F R/W :Register data
80-87 1:RS232 interface
#80 R/W :i-8251 gegevenstransmissie
#81 R/W :i-8251 commando/statusregister
#82 R :toestand van de RS232-verbinding
#83 W :interruptmasker
i-8253 programmable timer
#84 R/W :i-8253 teller 0
#85 R/W :i-8253 teller 1
#86 R/W :i-8253 teller 2
#87 W :i-8253 instelling
88-8B 2:MSX2 V9938 adaptor voor de MSX1 V9929 (neos)
8C-8D x:Modem MSX van Sony
8E-8F x:Gereserveerd
90-91 2:Printer interface
#90 W :bit0 = strobe
R :bit1 = status
#91 W :Code van te printen teken
92 x:?
93 2:Printer busdirection. De S1985 (MSX-Engine) is voorbereid op een
Redirectionale printerpoort! Het vereist extra externe chips maar geen
bestaande MSX model heeft het ooit gebruikt.
#93 :bit 0-1 are used to control the mode.
0 0 /PRST release
0 1 /PRST ouput
1 0 Input state or /PRS release
1 1 Output state or /PRST release
Zie het S1985 MSX SYSTEM 2 Application manual pagina 13-14.
98-9B +:Video Display Processor (VDP), type V9938, V9958
#98 R/W :Poort #0, Vram
#99 R :Poort #1, Status register
W Register/Register data
W Vram adres
#9A W :Poort #2, Palet
#9B W :Poort #3, Indirect access
9C-9F x:Gereserveerd
A0-A2 1:General Instruments AY-3-8910 Programmabele Sound Generator (PSG)
3A0 W :Register
#A1 W :Register data (W)
#A2 R :Register data (R)
A4-A5 R:PCM, D/A converter
#A4 W /A Converter. Beide gebruikt tijdens het opnemen en af-
spelen van PCM.
R :Bit 0-1 Teller 16 Khz. Gebruikt door sampler
Bit 2-7 Ongebruikt
#A5 W :Bit 0 ? Altijd gezet met bit 1, gereset tijdens sampling?
Bit 1 Muting: (1) geluid aan (0) geluid uit
Bit 2 Filter (1=on) meestal gebruikt tijdens sampling
Bit 3 Select: (1) Mic/Jack (0) D/A Converter
Bit 4 Sample/Hold: (1) stores a value which the
Comperator will womper to the output of the DAC
during sampling
Bit 5-7 Ongebruikt
R :Bit 0 ? Altijd gezet met bit 1, gereset tijdens sampling?
Bit 1 Muting: (1) geluid aan (0) geluid uit
Bit 2 Filter (1=on) meestal gebruikt tijdens sampling
Bit 3 Select: (1) Mic/Jack (0) D/A Converter
Bit 4 Sample/Hold: (1) stores a value which the
Comperator will womper to the output of the DAC
during sampling
Bit 5-6 Ongebruikt
Bit 7 Comperator result.
A6 R:?
A7 R:Ledjes van Turbo R display
#A7 W :Bit 0 Pauze led: (0) uit, (1) aan
Bit 7 Turbo led: (0) uit, (1) aan
R :Bit 0 Detecteert of de PAUSE toets ingedrukt is: (1) is
ingedrukt
A8-AB 1:Intel 8255 Programmable Peripheral Interface (PPI)
#A8 R/W :PPI Poort A :Primary slotselect register
#A9 R :PPI Poort B :Deze poort wordt gebruikt om de 8 bits rij te
lezen van de op dat ogenblik afgetast rij van het keyboard
Het is geconstruktureerd als een matrix van 11 rijen van
elk 8 bits breed. Op de Turbo R worden alle 11 de rijen
bezet. (De 11e rij is o.a. voor het uitlezen van de
interne software schakellaar die naast de reset knop zit)
#AA R/W :PPI Poort C :Diversen functies
Bit 0-3 Bepaald welke rij op het toetsenbord (0 t/m 11)
door poort B ingelezen moet worden
Bit 4 Het cassettemoter bit, bepaalt de stand van het
relais dat de cassettemoter schakelt: (0) aan,
(1) uit
Bit 5 Het cassette output bit, wordt gefilterd en
verzwakt voordat het naar de DIN plug gaat, als
het signaal voor de cassetterecorder. Alle
cassettesignalen worden via software gegenereerd.
Bit 6 Het CAPS bit, bepaalt de stand van het lampje bij
de hoofdletter toets: (0) aan, (1) uit
Bit 7 Bepaalt het geluid dat gemaakt wordt bij het
indrukken van een toets. Het wordt verzwakt en
gemengd met het signaal van de geluidsgenerator.
Om een geluid voort te brengen, moet dit bit
voortdurend tussen 0 en 1 heen wen weer gezet
worden.
#AB W :Mode register. Deze poort regelt de werking van de PPI.
De MSX hardware werd ontworpen om in een bepaalde
configuratie te werken. Het wijzigen van deze poorten is
dus niet nodig en zeer gevaarlijk. Men kan er de PPI
zelfs mee opblazen!
Bit 0 C-direction bit bepaalt in welke richting de
laagste vier bits van poort C werken: (0) output
(MSX), (1) input
Bit 1 B-direction bit bepaalt de richting voor poort B:
(0) output, (1) input (MSX)
Bit 2 'B & C mode' bit bepaalt de manier waarop poort B
werkt en de laagste vier bits van poort C: (0)
normale werking (MSX), (1) strobe mode
Bit 3 C-direction bit bepaalt in welke richting de
hoogste vier bits van poort C werken: (0) output
(MSX), (1) input
Bit 4 A-direction bit bepaalt de richting voor poort A:
(0) output (MSX), (1) input
Bit 5-6 'A & C mode' bit bepalen de werking van poort A,
en de vier hoogste bits van poort C: (00) normale
werking (MSX), (01) strobe mode, (10) tweerich-
tings verkeer
Bit 7 Mode bit: (1) men kan door middel van bit 0-6 de
mode waarin de PPI werkt wijzigen, (0) Nu krijgt
het Mode register een hele andere functie! Deze
poort kan nu gebruikt worden om rechtstreeks een
bit van poort C te (re-)setten. De bits van de
Mode poort hebben als bit7 0 is de volgende
functie: Bit 0 Reset/set bit: (0) reset, (1) set
Bit 1-3 Bepaalt het bit van register C,
mogelijke waarde zijn 0 t/m 7
Bit 4-6 Niet in gebruik
Door de instructie OUT &hAB,&b00001100 kan het
CAPS-lock lampje worden aangezet
AC-AF 2:MSX Engine (welke ? niet S1990 of S1985!)
B0-B3 1:HBI-55 (8255) data catridge SONY
#B0 R/W :Poort A adreslijn A0-A7
#B1 R/W :Poort B adreslijn A8-A10, A13-A15, Control, R/W
#B2 R/W :Poort C adreslijn A11-A12, datalijnen D0-D7
#B3 :Control wordt 8255 WR
B4-B5 2:Clockchip interface (RP 5C01)
#B4 W :Register/block
#B5 R/W :Register data
B6-B7 x:Card reader
B8-BB 2:-Lichtpen interface Sony
-Barcode reader NMS 1190/20 (b8/9)
BC-BF 2:Video controller JVC (VHD)
C0-C1 2:MSX Audio
#C0 W :Register
R Status register
#C1 W :Register data
C2-C3 2:MSX-Audio 2e instelling
#C0 W :Register
R Status register
#C1 W :Register data
C4-C7 2:Moonsound (OPL4), het FM-gedeelte
#C4 W :Register
R Status register
#C5 R/W :Register data
#C6 W :Register (2.nd register block)
#C7 R/W :Register data (2.nd register block)
C8-CC 2:MSX interface. De MSX interface is een 8255 interface voor
communicatie tussen 2 MSX computers. Het SUBROM initialiseerd deze
poorten als een 8255.
CD-CF x:
D0-D7 2:Floppy controller ATV (Diskdrive)
#D6 :in Use
#D7 :Motor on
2:MK SCSI harddisk interface
R:Turbo R GT, There is a circuit in the GT which will cancell all I/O
to port #D0-#DF, that is probably because of the Kanji ROM's. If
external KanjiROM cartridges is put in the Turbo R and there is
differences in the ROM's then the ROM's would be in danger. This
circuit is probably not in the A1ST!
D8-D9 2:Kanji ROM 1
#D8 W :Adreslijnen A5-A0 LSB
#D9 W :Adreslijnen A5-A0 MSB
R :Datalijnen D7-D0
DA-DB 2:Kanji ROM 2 (Uitbreiding)
#DA W :Adreslijnen A5-A0 LSB
#DB W :Adreslijnen A5-A0 MSB
R :Datalijnen D7-D0
DC R:Kanji ROM 24 dot (output, sets the address)
DD x:Font data
DE-DF x:Gereserveerd
E0-E2 R:MSX MIDI cartridge
#E0 R/W :Data
#E1 W :Command
R :Status register
#E2 W :Select. I believe that this port can be used to change the
port between E0-E1 and E8-E9 or perhaps just to enable it.
I know that bit 0 is used but I don't know the exact
function.
E3-E5 R:Turbo R MSX-Engine S1990
#E3 :?
#E4 W :Register write
#E5 R/W :Data register inhoud read/write
register 5: de schakellaar 00=rechts
64=links
register 6: de processor 00=R800 DRAM
64=R800 ROM
96=Z80
register 13: ? (3 perhaps a primary slot # ?)
register 14: ? (47 ?)
register 15: ? (139 = 10001011, perhaps a slotID?)
E6-E7 R:System Timer, 16-bit counter van ongeveer 250 KHz.
#E6 R :LSB
#E7 R :MSB
E8-E9 R:MSX-MIDI interface (8251 chip, same as used in RS232)
#E8 R/W :MIDI data
#E9 W :Command
Bit 0 MIDI out enable
Bit 1 MIDI timer enable. (Interrupt enable !)
Bit 2 MIDI in enable.
Bit 5 Enable interrupt for received MIDI data.
To initialise the 8251 first write a Mode Select Byte and then
a Command Select Byte. After this the chip will be in the Command
Select mode until bit 6 (Internal Reset) is set.
0 1 0 0 1 1 1 0 (Used for MIDI operation)
XWWRWWRWWRWWWRWWRWWRWWRWWY
W VS2VS1VEPVPENVL2VL2VB2VB1V Mode Select Byte.
ZWWQWWQWWQWWWQWWQWWQWWQWW[ XWWWWRWWWRWWWRWWWY
V V V V V V V ZWWS 0 V 1 V 0 V 1 V
V V V V V V ZWWWWWS 0 V 0 V 1 V 1 V
V V V V V V TWWWWUWWWUWWWUWWWS
V V V V V V VSyncV *1V*16V*64V
V V V V V V ZWWWWQWWWQWWWQWWW[
V V V V V V Character Length
V V V V V V XWWWRWWWRWWWRWWWY
V V V V V ZWWWWWWWWS 0 V 1 V 0 V 1 V
V V V V ZWWWWWWWWWWWS 0 V 0 V 1 V 1 V
V V V V TWWWUWWWUWWWUWWWS
V V V V V 5 V 6 V 7 V 8 V Data Bits
V V V V ZWWWQWWWQWWWQWWW[
V V V ZWWWWWWWWWWWWWWW Parity Enable. 1 = enabled.
V V ZWWWWWWWWWWWWWWWWWW Even Parity generation / check
V V 1 = Even parity. 0 = Odd parity
V V
V V Stop bits
V V XWWWRWWWRWWWRWWWY
V ZWWWWWWWWWWWWWWWWWWWWWS 0 V 1 V 0 V 1 V
ZWWWWWWWWWWWWWWWWWWWWWWWWS 0 V 0 V 1 V 1 V
TWWWUWWWUWWWUWWWS
V---V 1 V1.5V 2 V Stop Bits
ZWWWQWWWQWWWQWWW[
Command Select Byte (after Mode Select Byte!)
1 Bit 0 TxEN Transmit Enable (0) disable, (1) enable
1 Bit 1 DTR DTR pin. 1: pin=0. (Active)
1 Bit 2 RxE Receive Enable (0) disable, (1) enable
0 Bit 3 SBRK Send Break Characters (0) Normal transmision,
(1) Send Break Characters (TxD low)
0 Bit 4 ER Error Reset (1) reset flags PE,OE,FE
1 Bit 5 RTS RTS pin. 1 = RTS active low.
0 Bit 6 IR Internal Reset (1) returns to Mode Instruction
0 Bit 7 EH Enter Hunt Mode (1) search for Sync Char. (not used)
R :Status register
Bit 0 TxRDY (1)=ready for TX chars.
Bit 1 RxRdy (1)=Byte in receive buffer
Bit 2 TxEmpty (1)=Transmitter is empty
(0)=Transmitteris sending data
Bit 3 PE (1)=Parity Error
Bit 4 OE (1)=Overrun error (data lost)
Bit 5 FE Framing error. (no Stop bit)
Bit 6 SynDet (1)=SYNC char detected in SYNC mode. (MIDI
is ASYNC)
Bit 7 DSR input pin
DSR pin is connected to the 8254 TIMER interrupt output. If interrupt
have been disabled then we can read this bit to detect TIMER interupt.
The A1GT interrupt handler uses bit 7 to detect Timer interrupt and
bit 1 to detect MidiRx interrupt.
EA-EB R:Used to Clear the 8254 timerinterrupt. Done by writing any value.
EC-EF R:8254 chip. De 8254 is net als de 8253 een timer, maar heeft verbeterde
mogelijkheden om de timerwaardes uit te lezen en kan een hogere
snelheid aan. Note: Timer 1 telt,
Timer 2 'interrupts'.
#EC R/W :Timer 0, Input Clock 4MHz. Output 8251 Clock
#ED R/W :Timer 1, Input Timer 2. Geen output. (Alleen Software)
#EE R/W :Timer 2, Input Clock 4MHz. Output genereerd interrupts.
#EF W :Command
F0-F3 x:Gereserveerd
F4 +:ROM/Cold start Status register
#F4 R/W :bit 7 Wordt gebruikt om een onderscheid te maken tussen
een soft- en hardware reset. (Op de Turbo R wordt
dit bit niet geinventeerd!)
:bit 5 When this bit have been written then it cannot be
reset again by software. It is used by the Bootup
routine to see if it should change the CPU mode.
(I think)
note: Due to the polarity change on Turbo R you should use
the BIOS routines #17A and #17D to Read and Write !
F5 2:System control, met deze poort kan je interne hardware disabele voor
het geval dat een cartridge met dezelfde inhoud in een extern slot
steek. Op een met Kanji ROM's computer (Turbo R) kun je het als volgt
uitproberen: Schakel de Kanji mode in (_kanji0), type OUT &hF5,0, de
Kanji letters zullen nu witte blokjes zijn. Na OUT &hF5,1 is alles
weer normaal.
#F5 W :bit0 Kanji ROM
bit1 Kanji ROM 2
bit2 MSX-Audio
bit3 Super Impose
bit4 MSX-interface
bit5 RS232c interface
bit6 Lichtpen
bit7 Clockchip interface
F6-F7 2:Audio/Video control superimpose !!!!!!!!!!!!!!!!!!!
#F6 R/W :Colorbus control
#F7 :bit0 audio rechts
bit1 audio links
bit2 video input select
bit3 video input sence (lezen)
bit4 A/V control
bit5 Ym control
bit6 Ys control
bit7 Video select
F8 x:Opt palvers bit 8280???!!!!
#F8 :bit0 audio rechts
bit1 audio links
bit2 Gereserveerd
bit3 Rc 5 int
bit4 Sound
bit5 Sound
bit6 Gereserveerd
bit7 Gereserveerd
F9-FB x:Gereserveerd
FC-FF 2:Memory mapper
#FC W :Page 0, (&H0000-&H3FFF)
#FD W :Page 1, (&H4000-&H7FFF)
#FE W :Page 2, (&H8000-&HBFFF)
#FF W :Page 3, (&HC000-&HFFFF)
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie