99 lines
2.3 KiB
HTML
99 lines
2.3 KiB
HTML
; ===================================================
|
||
; Orion-128 computer
|
||
; System I/O ports
|
||
;
|
||
; Disassembled by Romychs @ 2026-10-08
|
||
; ===================================================
|
||
|
||
|
||
; System port mapped to RAM address.
|
||
PORT_F400_KBD EQU 0xf400
|
||
|
||
; System port mapped to RAM address.
|
||
PORT_F401_KBD EQU 0xf401
|
||
|
||
; System port mapped to RAM address.
|
||
PORT_F402_KBD EQU 0xf402
|
||
|
||
; System port mapped to RAM address.
|
||
PORT_F500_USR1 EQU 0xf500
|
||
|
||
; System port mapped to RAM address.
|
||
; Used to output LPT Data
|
||
PORT_F600_USR2 EQU 0xf600
|
||
|
||
; System port mapped to RAM address.
|
||
PORT_F601_USR2 EQU 0xf601
|
||
|
||
; System port mapped to RAM address.
|
||
PORT_F602_USR2 EQU 0xf602
|
||
|
||
; System port mapped to RAM address.
|
||
; LPT Control port
|
||
; bit 7 - output /STROBE sygnal
|
||
; bit 3 - input BUSY sygnal
|
||
PORT_F603_USR2 EQU 0xf603
|
||
|
||
; System port mapped to RAM address.
|
||
; VG93 State/Command
|
||
FDC_F700_STATE EQU 0xf700
|
||
|
||
; System port mapped to RAM address.
|
||
; VG93 Track number
|
||
FDC_F701_TRACK EQU 0xf701
|
||
|
||
; System port mapped to RAM address.
|
||
; VG93 Sector number
|
||
FDC_F702_SECTOR EQU 0xf702
|
||
|
||
; System port mapped to RAM address.
|
||
; VG93 read/write data from floppy
|
||
FDC_F703_DATA EQU 0xf703
|
||
|
||
; System port mapped to RAM address.
|
||
FDC_F704_REQ EQU 0xf704
|
||
|
||
; System port mapped to RAM address.
|
||
; Select floppy disk side
|
||
FDC_F708_SIDE EQU 0xf708
|
||
|
||
|
||
; Write only system port mapped to RAM address.
|
||
; Set video mode.
|
||
; bit 0 - palette 0-1, 1-2;
|
||
; bit 1 - color count 0 - 16 colors, 1 - 4 colors;
|
||
; bit 2 - 0-mono, 1-color;
|
||
PORT_SYS1 EQU 0xF800
|
||
|
||
|
||
; Write only system port mapped to RAM address.
|
||
; Set active RAM page
|
||
; bits D[3:0] - page number
|
||
PORT_SYS2 EQU 0xf900
|
||
|
||
; Write only system port mapped to RAM address.
|
||
; Switch Screen
|
||
; bits D[1:0] - screen number;
|
||
; bit D6 - RAM Refresh;
|
||
; bit D7 - 12k/16k (384px/512px screen width)
|
||
PORT_SYS3 EQU 0xfa00
|
||
|
||
; Write only system port mapped to RAM address.
|
||
PORT_SYS4 EQU 0xfb00
|
||
|
||
; ===================================================
|
||
; I/O Ports
|
||
; ===================================================
|
||
|
||
; Set active RAM page
|
||
; bits D[3:0] - page number
|
||
P_SW_MEM EQU 0xf9
|
||
|
||
; Switch screen RAM window
|
||
; D1 D0
|
||
; 0 0 — screen 1 (0xС000—0xEFFF)
|
||
; 0 1 — screen 2 (0x8000—0xAFFF)
|
||
; 1 0 — screen 3 (0x4000—0x6FFF)
|
||
; 1 1 — screen 4 (0x0000—0x2FFF)
|
||
P_SW_SCR EQU 0xfa
|