summaryrefslogtreecommitdiff
path: root/content/hardware/imc-2001.md
blob: 0f98ef298992dfdf51eafc68955b53a17583d153 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
+++
title = "IMC-2001"
+++

# IMC-2001

This is an old Taiwanese Apple \]\[ / CP/M clone. 

# Status

Trying to fix several issues:

- strange issues with imaged floppied not working in LinApple or also
  not on the real computer, always bailing out in the monitor in strange
  locations. Used Fluxengine and ADTPro to get images, they are identical.
  Checked the RAM of the machine, no errors.
- HGR shows a line on row 0 only partially. This could be an adjustment issue
  of the CRT image or also bad RAM.
- the CRT shows some flickering and diagonal effects. Testing on an old TV
  shows the same issue (so I suspect it's some grounding/shielding issue
  with the new PSU).
- the lever moving the contacts between 40-character and 80-character
  mode for the CRT output is corroded, doesn't always make contact
  and produces a flickering image
- the CRT is producing some flickering when turning the brightness nob,
  this should be fixable with some deoxit.
- keyboard cable is broken, at least the data line
- the paddle and the joystick connectors miss some legs for putting them into
  the sockets on the motherboard
- the second floppy drive (the more used one) now sees floppies always as
  "write protected". Diagnostic tests show alignment issues of the drive, this
  could be true, or the clone always had a different alignment than a default
  Apple 2 drive?
- possibly much more

Fixed issues:

- ~~the floppy drives read floppies (both) but they don't write to floppies
  (when copying in CP/M or creating a file), they work when formatting
  a drive on CP/M though. ~~Could be a side-effect of the PSU not working properly.~~
  The PSU has been replaced, the voltages look ok, so I rule out the PSU.
  Could be some missing code in the Apple ROM (but that would be weird to
  call 6502 firmware code from the Z80 CPU). It could also be the write
  current being to low for writting (but why does formatting a drive work then?!)~~
  So, yes. DOS 3.3 and CP/M both use some ROM routines from ROM1 to write to disk.
  Works now.
- ~~floppies written read/written with Fluxengine don't really work either
  on the real hardware or the emulator. Suspecting a encoding/decoding issue.~~
  Updating Fluxengine solved the issue, also choosing 96dpi 5 1/4" for the real
  floppy drive. :-)
- ~~the keyboard reset line cannot be taken to ground on the keyboard, works
  with shrtening ground and reset though just fine. Must be a bug on the
  ICs of the keyboard controller or a broken trace.~~ Fixed with a botch
  to bridge the broken ribbon cable between keyboard matrix and the PCB with
  the controller logic.
- ~~ROM 1 with BASIC is broken (and gets really hot). This explains
  the booting issues.. (will be tricky to get a replacement). The
  board layout doesn't fit to the original ROM sizes too..~~
  Got an AT28C256, no more frying of chips, Apple Basic prompt appears,
  tested some commands and it seems fine. The 32k ROM has to be filled in
  starting from 0x6000 with #E000-$EFFF and from $7000 with $D000-$DFFF.
  If this ROM is ok we will see.
- Reseated and deoxied all ICs, some of them were quite corroded, at
  least 3 more turned out to be bad. ~~Sadly it didn't have an effect on
  ROM 1 not getting hot (must be something else).~~ The new replacement
  ROM works fine and doesn't get hot. So I actually blame it on the ROM
  itself causing the other ICs to fry and not vice-versa.
- ~~power switch made some hissing noises, it was not the switch, now
  the original power is dead (and some transformers are humming). Ordered
  a Apple 2 replacement PSU, waiting for it..~~
  The new replacement power supply works like a charm, also replaced
  the power switch, the old one was too unreliable.
- ~~sometimes I get into the monitor~~
- ~~lower-nibble bit 3 of the key
  being pressed is missing, unclear where it is lost, I suspect a
  bad register on the motherboard holding the current ASCII value of
  the key pressed or something similar~~. Replaced a bad 74LS257N,
  works now just fine.

Not fixed issues:

- ~~The 220V fan no longer works.~~
  I just disconected it, I don't think, it really helps to cool the system.

Known things to work:

- The keyboard works electronically (8039 MCS-48 like CPU with a 2K EPROM)
- the Rockwell R6502 CPU has a phase 0 clock and seems to go through
  address lines and output data (another strong indicator is the 'Apple \]\['
  sign on the monitor when switching on which indicates 6502, 40-character
  ROM, video circuit seems to be just fine).
- Monitor is working just fine (which is sort of amazing for such an old
  CRT monitor).
- I can boot from a Apple \]\[ CP/M 56k floppy and I get a prompt, now
  as the keyboard works and the CP/M on the 80-character card I can also
  assume the Z80 is working just fine.
- the 80-columns card (a Videx Videoterm or rather a clone of it) works just fine.
- the highres graphic mode works just fine, I can run "Peter Anvin Chess" and play it.
- Applesoft BASIC works fine
- the new Super Serial Card II I got works fine, though it looses characters
  (without parity and adding some delay in minicom). Definitely usable.
  
# Images

From the outside:

{{< figure src="/images/hardware/imc-2001/computer_full.jpg" alt="IMC-2001" >}}

Booting into Apple \]\[ CP/M 56k:

{{< figure src="/images/hardware/imc-2001/cpm_40chars.jpg" alt="IMC-2001" >}}

The motherboard and floppy drives:

{{< figure src="/images/hardware/imc-2001/motherboard_internal.jpg" alt="IMC-2001" >}}

Keyboard layout:

{{< figure src="/images/hardware/imc-2001/keyboard_front.jpg" alt="keyboard layout" >}}

Keyboard has a 8039 CPU inside and a 2K EPROM:

{{< figure src="/images/hardware/imc-2001/keyboard_pcb_controller_prom.jpg" alt="PCB and controller" >}}

On the oscilloscope:

{{< figure src="/images/hardware/imc-2001/oscilloscope_serial_keyboard.jpg" alt="serial keyboard signal" >}}

Broken keyboard cable (the black pins are just connectors added by me to test connectivity,
both connector are female per default):

{{< figure src="/images/hardware/imc-2001/keyboard_cable.jpg" alt="PCB and controller" >}}

Old PSU:

{{< figure src="/images/hardware/imc-2001/old_psu.jpg" alt="New PSU" >}}

New PSU replacing the old crusty one (this is a standard replacement PSU for
Apple \]\[ from [Reactive Micro](https://wiki.reactivemicro.com/Universal_PSU_Kit)):

{{< figure src="/images/hardware/imc-2001/new_psu.jpg" alt="New PSU" >}}

# Documentation

This is the "Operation Manual for IMC-2001, version 2.01":

{{< figure src="/images/hardware/imc-2001/manual_frontpage.jpg" alt="manual frontpage" >}}

[The complete scanned manual](/hardware/imc-2001/manual_imc_2001_2.01.pdf)
(also on archive.org, see [https://archive.org/details/manual_imc_2001_2.01](https://archive.org/details/manual_imc_2001_2.01))

# Super Serial Card

I got a super serial card from Ebay, the documentation of it can be
found here [https://archive.org/details/Apple_II_Super_Serial_Card_1981_Apple](https://archive.org/details/Apple_II_Super_Serial_Card_1981_Apple).

# Schematics

Power connector on the motherboard:

```
O O O O O O
| | | | | +--- GND   black
| | | | +----- +12V  red
| | | +------- -5V   blue
| | +--------- -12V  brown
| +----------- +5V   white
+------------- +5V   white
```

keyboard cable connectors:

connector to machine (sort of a gummy version of a DB-9):

computer has a 9-pin DSUB connector male:

```
  +-----------    white  INTR
  | +---------    black  GND
  | | +-------    green  DATA
  | | | +-----    blue   RESET
  | | | | +---    Yellow CLOCK
-------------
\ O O O O O /
 \ O O O O /
  ---------
   | | | +----    red    5V
   | | +------    n.c.
   | +--------    n.c.
   +----------    n.c.
```   

On the keyboard PCB there is a strange white connector with the following layout:

```
    +------------- white   INTR (active low, after last clock tick)
    | +----------- black   GND
    | | +--------- blue    RESET (active low)
    | | | +------- green   DATA
    | | | | +----- yellow  CLOCK
    | | | | | +--- red     +5V
   +-----------+
   |o o o o o o|
   +-----------+
   |           |
```

# Links

* [Mention of the IMC-2001](http://www.epocalc.net/php/liste_models.php?texte=&look=All+fields&yearmax=2018&nocomp=pc&cat=Apple+2+clone):
  mentions it on the list of Apple clones
* [Youtube video of similar machine](https://www.youtube.com/watch?v=c7crlJg80Zg):
  "APPLE II CLONE + CP/M ------- IMC 2001 made in taiwan.--------", Retro Computacion Argentina Jorge E. Nuviola