mirror of
https://github.com/romychs/OK240.2-Firmware.git
synced 2026-04-21 10:53:18 +03:00
103 lines
3.9 KiB
PHP
103 lines
3.9 KiB
PHP
; =======================================================
|
||
; Ocean-240.2
|
||
; Computer with FDC variant.
|
||
; IO Ports definitions
|
||
;
|
||
; By Romych 2025-09-09
|
||
; =======================================================
|
||
|
||
IFNDEF _IO_PORTS
|
||
DEFINE _IO_PORTS
|
||
|
||
; -------------------------------------------------------
|
||
; КР580ВВ55 DD79
|
||
; -------------------------------------------------------
|
||
|
||
USR_DD79PA EQU 0x00 ; User port A
|
||
USR_DD79PB EQU 0x01 ; User port B
|
||
USR_DD79PC EQU 0x02 ; User port C
|
||
|
||
; Config: [1][ma1,ma0][0-aO|1-aI],[0-chO,1-chI],[mb],[0-bO|1-bI],[0-clO,1-clI]
|
||
; Set bit: [0][xxx][bbb][0|1]
|
||
USR_DD79CTR EQU 0x03
|
||
|
||
; -------------------------------------------------------
|
||
; КР1818ВГ93
|
||
; -------------------------------------------------------
|
||
|
||
FDC_CMD EQU 0x20 ; FDC Command
|
||
FDC_TRACK EQU 0x21 ; FDC Track No
|
||
FDC_SECT EQU 0x22 ; FDC Sector
|
||
FDC_DATA EQU 0x23 ; FDC Data
|
||
|
||
FDC_WAIT EQU 0x24 ; FDC Wait
|
||
|
||
; Floppy Controller port
|
||
; WR: 5-SSEN, 4-#DDEN, 3-INIT, 2-DRSEL, 1-MOT1, 0-MOT0
|
||
; RD: 7-MOTST, 6-SSEL, 5,4-x , 3-DRSEL, 2-MOT1, 1-MOT0, 0-INT
|
||
FLOPPY EQU 0x25 ; Floppy Controller port
|
||
|
||
; -------------------------------------------------------
|
||
; КР580ВВ55 DD78
|
||
; -------------------------------------------------------
|
||
KBD_DD78PA EQU 0x40 ; Port A - Keyboard Data
|
||
KBD_DD78PB EQU 0x41 ; Port B - JST3,SHFT,CTRL,ACK,TAPE5,TAPE4,GK,GC
|
||
KBD_DD78PC EQU 0x42 ; Port C - [PC7:5],[KBD_ACK],[PC3:0]
|
||
|
||
; Сonfig: [1][ma1,ma0][0-aO|1-aI],[0-chO,1-chI],[mb],[0-bO|1-bI],[0-clO,1-clI]
|
||
; Set bit: [0][xxx][bbb][0|1];
|
||
KBD_DD78CTR EQU 0x43
|
||
|
||
|
||
; -------------------------------------------------------
|
||
; КР580ВИ53 DD70
|
||
; -------------------------------------------------------
|
||
|
||
TMR_DD70C1 EQU 0x60 ; Timer counter 1
|
||
TMR_DD70C2 EQU 0x61 ; Timer counter 2
|
||
TMR_DD70C3 EQU 0x62 ; Timer counter 3
|
||
|
||
; Timer config: [sc1,sc0][rl1,rl0][m2,m1,m0][bcd]
|
||
; sc - timer, rl=01-LSB, 10-MSB, 11-LSB+MSB
|
||
; mode 000 - int on fin,
|
||
; 001 - one shot,
|
||
; x10 - rate gen,
|
||
; x11-sq wave
|
||
TMR_DD70CTR EQU 0x63
|
||
|
||
; Programable Interrupt controller PIC KR580VV59
|
||
PIC_DD75RS EQU 0x80 ; PIC RS
|
||
PIC_DD75RM EQU 0x81 ; PIC RM
|
||
|
||
; -------------------------------------------------------
|
||
; КР580ВВ51 DD72
|
||
; -------------------------------------------------------
|
||
|
||
UART_DD72RD EQU 0xA0 ; Serial data
|
||
UART_DD72RR EQU 0xA1 ; Serial status [RST,RQ_RX,RST_ERR,PAUSE,RX_EN,RX_RDY,TX_RDY]
|
||
|
||
; -------------------------------------------------------
|
||
; КР580ВВ55 DD17
|
||
; -------------------------------------------------------
|
||
|
||
SYS_DD17PA EQU 0xC0 ; Port A - VShift[8..1]
|
||
SYS_DD17PB EQU 0xC1 ; Port B - [ROM14,13][REST][ENROM-][A18,17,16][32k]
|
||
SYS_DD17PC EQU 0xC2 ; Port C - HShift[HS5..1,SB3..1]
|
||
|
||
; Сonfig: [1][ma1,ma0][0-aO|1-aI],[0-chO,1-chI],[mb],[0-bO|1-bI],[0-clO,1-clI]
|
||
; Set bit: [0][xxx][bbb][0|1];
|
||
SYS_DD17CTR EQU 0xC3
|
||
|
||
; -------------------------------------------------------
|
||
; КР580ВВ55 DD67
|
||
; -------------------------------------------------------
|
||
|
||
LPT_DD67PA EQU 0xE0 ; Port A - LPT Data
|
||
VID_DD67PB EQU 0xE1 ; Port B - [VSU,C/M,FL3..1,COL3..1]
|
||
DD67PC EQU 0xE2 ; Port C - [USER3..1,STB-LP,BELL,TAPE3..1]
|
||
|
||
; Сonfig: [1][ma1,ma0][0-aO|1-aI],[0-chO,1-chI],[mb],[0-bO|1-bI],[0-clO,1-clI]
|
||
; Set bit: [0][xxx][bbb][0|1];
|
||
DD67CTR EQU 0xE3
|
||
|
||
ENDIF |