
Addressing the RAM
The MIO can access up to 1 Megabyte of RAM which takes 20 bits to address. Address bits A19-
A16 are set from writing to the latch at $D1E2, bits A15-A8 are set from writing to the latch at
$D1E0, and bits A7-A0 are CPU address lines A7-A0 when reading/writing $D6xx. Thus there are up
to 4096 "pages" of memory that may appear at the $D6xx window.
In order to access the memory, it must first be enabled by setting $D1E2 bit 5 to "1" (this also turns
on the MIO's red LED). It is generally a good idea to leave the RAM disabled while not using it in
case of a system crash (which could inadvertently write in the $D6xx window).
When power is removed from the computer (for whatever reason), the MIO will continue refreshing
its dynamic RAM. This is accomplished by its ability to maintain a 02 clock after the computers clock
has stopped. VC1 adjusts the MIO's 02 clock frequency. Adjustment requires special equipment and
should not be attempted.
Checking IRQ Status
The MIO has two sources of interrupts; one is the ACIA and the other is the parallel printer port. The
printer port may interrupt the computer only if bit 7 of $D1E2 is set ('1') and the printer BUSY is false
('0'). Bit 4 of $D1E3 is the general IRQ flag from the MIO (a 1 indicates that IRQ- is true). If bit 3 is
also set, then the IRQ- is caused by the printer. If not, then it must be the ACIA (in which case
$D1C1 bit 7 should be set).
Note that the parallel device IRQ mask (PDIMSK at $249) is set to $10 by the MIO RAM. This is
because, there is only one interrupt handler (which supports all possible MIO interrupts) in the ROM.
In fact, the system would crash if the OS tried to enter any of the other ROM banks to service the
IRQ.
Accessing the ROM
The ROM on the MIO contains all the software necessary to access the hard disk, the RAM, the
ACIA (as an R: or P:), and the parallel printer port. It also contains the configuration which is
downloaded into the computer RAM when RESET are pressed.
The ROM is accessed as 4-2K banks. (An additional 8K is reserved for the 80 column adapter.) Bits
5-2 (of $D1E3) select which bank will be active (if any) at the $D800-$DFFF region. Only 1 bit may
be set and its position selects which bank of ROM is active. If all bits are zero, then no banks are
active and the Floating Point Math package in the OS ROM is enabled.
According to Atari spec, 1 device is to occupy one bank of ROM and that device has a specific
address range legal to it at $D1xx. Since the MIO is an all inclusive device, however, it deviates from
this spec. Instead, it tries to cram as much code as possible into a small space. This meant juggling
the banks around to get along with the computer and to allow for expansion of an 80 column
adapter. This is why there is only one interrupt handler, yet several input bits are returned in what is
considered to be strictly an interrupt sense register (at $D1FF).
MIO Service Manual
Page 62
Summary of Contents for Mio
Page 1: ......
Page 3: ...MIO Service Manual Page 2 ...
Page 4: ...MIO Service Manual Page 3 ...
Page 5: ...MIO Service Manual Page 4 ...
Page 6: ...MIO Service Manual Page 5 ...
Page 7: ...MIO Service Manual Page 6 ...
Page 8: ...MIO Service Manual Page 7 ...
Page 10: ...U1 74LS20 DUAL 4 INPUT NAND GATE MIO Service Manual Page 9 ...
Page 11: ...U2 U12 U24 74LS175 QUAD D FLIP FLOP MIO Service Manual Page 10 ...
Page 12: ...MIO Service Manual Page 11 ...
Page 13: ...U3 U4 74LS138 3 TO 8 LINE DECODER MIO Service Manual Page 12 ...
Page 14: ...MIO Service Manual Page 13 ...
Page 15: ...U5 7407 HEX BUFFER DRIVER MIO Service Manual Page 14 ...
Page 16: ...U6 6551 ASYNCHRONOUS COMMUNICATION INTERFACE ADAPTER ACIA MIO Service Manual Page 15 ...
Page 17: ...MIO Service Manual Page 16 ...
Page 18: ...MIO Service Manual Page 17 ...
Page 19: ...MIO Service Manual Page 18 ...
Page 20: ...MIO Service Manual Page 19 ...
Page 21: ...MIO Service Manual Page 20 ...
Page 22: ...MIO Service Manual Page 21 ...
Page 23: ...U7 U10 74LS04 HEX INVERTER MIO Service Manual Page 22 ...
Page 24: ...U8 74LS02 QUAD 2 INPUT NOR GATE MIO Service Manual Page 23 ...
Page 25: ...U9 U25 74LS93 4 BIT BINARY COUNTER MIO Service Manual Page 24 ...
Page 26: ...MIO Service Manual Page 25 ...
Page 27: ...MIO Service Manual Page 26 ...
Page 28: ...U11 74LS10 TRIPLE 3 INPUT NAND GATE MIO Service Manual Page 27 ...
Page 29: ...U13 U21 U67 U69 74LS00 QUAD 2 INPUT NAND GATE MIO Service Manual Page 28 ...
Page 31: ...U15 27C128 16K x 8 EPROM MIO Service Manual Page 30 ...
Page 32: ...U16 U20 74LS73A DUAL J K FLIP FLOP WITH CLEAR MIO Service Manual Page 31 ...
Page 33: ...MIO Service Manual Page 32 ...
Page 34: ...MIO Service Manual Page 33 ...
Page 35: ...U17 MC1489P QUAD LINE RECIEVER MIO Service Manual Page 34 ...
Page 36: ...U18 LM3086 TRANSISTOR ARRAY MIO Service Manual Page 35 ...
Page 37: ...U19 74HC4046 PHASE LOCKED LOOP MIO Service Manual Page 36 ...
Page 38: ...MIO Service Manual Page 37 ...
Page 39: ...MIO Service Manual Page 38 ...
Page 40: ...MIO Service Manual Page 39 ...
Page 41: ...MIO Service Manual Page 40 ...
Page 42: ...MIO Service Manual Page 41 ...
Page 43: ...MIO Service Manual Page 42 ...
Page 44: ...U22 74LS139 DUAL 1 OF 4 DECODER DEMULTIPLEXER MIO Service Manual Page 43 ...
Page 45: ...MIO Service Manual Page 44 ...
Page 46: ...U23 74LS158 QUAD 2 INPUT MULTIPLEXER MIO Service Manual Page 45 ...
Page 47: ...MIO Service Manual Page 46 ...
Page 49: ...MIO Service Manual Page 48 ...
Page 50: ...U28 74LS240 OCTAL BUFFER LINE DRIVER WITH 3 STATE OUTPUTS MIO Service Manual Page 49 ...
Page 52: ...MIO Service Manual Page 51 ...
Page 53: ...MIO Service Manual Page 52 ...
Page 54: ...MIO Service Manual Page 53 ...
Page 55: ...MIO Service Manual Page 54 ...
Page 56: ...MIO Service Manual Page 55 ...
Page 57: ...MIO Service Manual Page 56 ...
Page 58: ...MIO Service Manual Page 57 ...