I was a bit hard pressed to find all the proper work attribution. Please let me know if you have data to contribute.
TIM-011
TIM-011 was an 8-bit teaching computer that was ostensibly developed by IMP in what is now Serbia.
It was one of the machines that kick-started my career as a software engineer. For better or worse.
There are precious few resource links for TIM-011, a machine that I personally hold in high regard because of its sentimental value to me. Which is why I set out to collect the resources about TIM-011 and try to preserve them as much as possible.
I understand that about 50% of the software that was made available to the original TIM-011 was preserved. The rest was lost to time.
It is still theoretically possible to port CP/M software to TIM-011 again (grease and elbows, people!), but the original software is lost.
The lesser known history of TIM-011
When it was released, TIM-011 was heralded as the pinnacle of domestic computer industry.
We didn’t know it back then, but it turns out that TIM-011 was in fact copied from MicroMint SB-180. MicroMint SB-180 was published as an open source do-it-yourself machine about 2 years prior to TIM-011, by the BYTE magazine. Which, of course, at the time we had no way of obtaining.
The majority of the design of TIM-011 was taken over without attribution. The video subsystem seems to have been original, but also taken without attribution from a banking system developed by IMP some 2 years before TIM-011 was announced.
Reportedly around 1200 units were made.
Personal commentary
My hypothesis is that more than a few computing careers in what used to be Yugoslavia were made through arbitrage on the value from foreign publications, without proper attribution. But all of that is spilt milk under the bridge now.
Links
The links that I collected from various sources, mostly starting from the breadcrumbs from the #tim-011
retro computing discord channel. All significant work is due to other people, see this video presentation for a detailed account of events.
-
A Discord channel dedicated to TIM-011. This is the gathering spot for people who did the actual work of reviving TIM-011 software and hardware and are keeping the spirit alive.
-
https://hackaday.io/project/176081-tim-011-fpga-based-vga-and-ps2-keyboard-adapter: someone’s hardware project of TIM-011 with hardware additions.
-
https://bitbucket.org/zzarko/tim011-tools/src/master/: the original spot for the re-constructed and new TIM-011 tools.
-
https://github.com/msolajic/tim011-system-software: annotated TIM-011 system software.
-
https://www.youtube.com/@zzarko: videos of recent experiments with TIM-011 (as well as other retro-computing escapades).
-
https://en.wikipedia.org/wiki/TIM-011: the TIM-011 wikipedia entry. It does not have much info about the machine, sadly.
-
https://sr.wikipedia.org/wiki/%D0%A2%D0%98%D0%9C-011: the TIM-011 wikipedia entry (not impressive at all)
-
https://www.youtube.com/watch?v=Msuo54fxdTk: a recent (2022) presentation about TIM-011.
-
https://github.com/filmil/mame-docker: a docker packaging of the TIM-011 emulator from the MAME suite. See it in action in this video.
-
https://github.com/filmil/tim011-tools: my fork of https://bitbucket.org/zzarko/tim011-tools/src/master/, which adds support for bazel tooling, and ports some of the examples from the original repository from MESCC, which is a CP/M native C compiler, to SDCC which is a C cross-compiler for small devices.
-
Recount of a request to IMP for information about TIM-011.
GreaseWeazle
From discord. I don’t know if this works. Translated from Serbian by me. Let me know if you want attribution if you publicized this.
For the users of GreaseWeazle, use the following in diskdefs.cfg
for writing TIM-011 floppies:
disk tim011.native
cyls = 80
heads = 2
tracks * ibm.mfm
secs = 5
bps = 1024
rate = 250
interleave = 2
id = 17
end
end
Gotek with FlashFloppy firmware
From Discord. Translated from Serbian by me. Let me know if you want attribution.
For Gotek users with FlashFloppy, you can remove the recent entry for tim011
from teh file img.cfg
and add this instead:
[::819200] # TIM011 Disk Image
cyls = 80
heads = 2
secs = 5
bps = 1024
mode = mfm
rate = 250
id = 17
interleave = 2
It is no longer necessary to name the disk in a particular way (diskname.tim011.img
), but you can do just diskname.img
, and the firmware will figure out what the file is for based on the file size. The interleave factor is also fixed, so TIM-011 is now able to read the disks a bit faster from Gotek.