Vlado Vince
@mejs
Getting ready for my next project
12/8/2020, 7:05:14 PM
Favs: 92
Retweets: 7
link← @mejs Twitter archive
Vlado Vince
@mejs
Getting ready for my next project
12/8/2020, 7:05:14 PM
Favs: 92
Retweets: 7
linkVlado Vince
@mejs
yes this is what I look like when working with electronics
12/8/2020, 7:07:09 PM
Favs: 13
Retweets: 1
linkVlado Vince
@mejs
And Orao board is here! I will never stop being amazed by the logistics of manufacturing a PCB in a factory in China and delivering it to Brooklyn in a matter of days. I would prefer to get it manufactured locally, but I don't know of anywhere?
12/9/2020, 7:39:09 PM
Favs: 14
Retweets: 0
linkVlado Vince
@mejs
Finishing up the prep and placing the parts order for Orao https://docs.google.com/spreadsheets/d/1-uLys-7tjvv-phVD3SI41Rpf4Eh5GZgOxdkQcq6Ky8I/edit?usp=sharing
12/11/2020, 12:41:15 AM
Favs: 7
Retweets: 0
linkVlado Vince
@mejs
Orao came out around the same time as Galaksija, but it was quite different in terms of target audience, production, price, and functionality. It was developed around the 6502 CPU by Miroslav Kocijan for PEL Varaždin in 1984.
12/11/2020, 12:41:37 AM
Favs: 15
Retweets: 0
linkVlado Vince
@mejs
Orao was designed (and priced!) for use in schools. It was common in elementary schools, mostly in Croatia, through the late 80s. It wasn't really common as a home computer. It was pretty expensive, and since it was mainly used in education there wasn't a lot of software for it.
12/11/2020, 12:50:31 AM
Favs: 12
Retweets: 0
linkVlado Vince
@mejs
When I built the Galaksija, I focused on the history of Yugoslavia's most popular DIY home computer. As such, it's pretty well known, and its story is truly unique - it wasn't just a computer, it was also a massive media effort with huge impact https://twitter.com/mejs/status/1310633747461668869
12/11/2020, 12:57:38 AM
Favs: 11
Retweets: 0
linkVlado Vince
@mejs
But Orao is different. It's one of a few other 8-bit computers manufactured by Yugoslav companies which didn't have background in computing, but started to make them for use in schools and industry. https://twitter.com/mejs/status/1317881471227596801
12/11/2020, 12:57:38 AM
Favs: 9
Retweets: 0
linkVlado Vince
@mejs
I don't expect I'll go into as much detail as I did with Galaksija, but I'm intrigued by Orao because there is much less information available online about it, and I think that researching it will give me more insight into how these other Yugo computers came about.
12/11/2020, 12:59:34 AM
Favs: 7
Retweets: 0
linkVlado Vince
@mejs
I want to note that this will be a very different build. I'm building an "Orao 2007" clone designed by Josip Perušanec who kindly shared the board files which I used to make mine. I'm not aware of anyone manufacturing a copy of the original Orao PCB. http://www.deltasoft.com.hr/projects/orao2007.php?title=Orao%202007
12/11/2020, 1:01:41 AM
Favs: 8
Retweets: 0
linkVlado Vince
@mejs
Orao was also going to be sold as a DIY kit. A guide was written, but the project was never finished. Retro Info recently released this guide, it includes the board schematics which could be used to make the original board. https://retroinfo.hr/dvije-knjige-za-pel-orao/
12/11/2020, 1:07:58 AM
Favs: 9
Retweets: 0
linkVlado Vince
@mejs
This guide is wonderful. It was written on a typewriter. I don't know if this was a draft or if it would have been distributed like that. In any case, it includes extensive intro to working with electronics, as well as basic theory. I love the illustrations.
12/11/2020, 1:11:08 AM
Favs: 10
Retweets: 1
linkVlado Vince
@mejs
For this project I hope to reuse the 65C02 CPU I got by accident when building my Galaksija https://twitter.com/mejs/status/1312962809265823744
12/11/2020, 1:14:43 AM
Favs: 8
Retweets: 0
linkVlado Vince
@mejs
Orao components have arrived! I'm still waiting for the EPROM and RAM (coming tomorrow), but I've got enough stuff to get started!
12/14/2020, 1:29:28 PM
Favs: 9
Retweets: 0
linkVlado Vince
@mejs
24 1N418 diodes are in! Quite different from Galaksija which had only a single diode.
12/14/2020, 3:04:47 PM
Favs: 8
Retweets: 0
linkVlado Vince
@mejs
Orao runs the MOS 6502 (65C02 in my case) CPU at 1 MHz. The crystal is 8 MHz, and there are 2 transistors 2x BC108C and 1 BC214 which I replaced with a BC337.
12/14/2020, 3:07:55 PM
Favs: 8
Retweets: 0
linkVlado Vince
@mejs
41 resistors: soldered!
12/14/2020, 4:42:11 PM
Favs: 8
Retweets: 0
linkVlado Vince
@mejs
And I got 23 capacitors soldered too. I couldn't find a 22nf capacitor so I soldered two 47nf ones in serial and made this two headed beast.
12/14/2020, 6:29:34 PM
Favs: 9
Retweets: 0
linkVlado Vince
@mejs
Well... Unless I got something terribly wrong this should be it. Got two empty sockets for the 27256 EPROM and 32K RAM. This was a quick build! I still need to figure out what to do for a keyboard. That empty 16 pin socket is for the keyboard connector.
12/14/2020, 8:19:01 PM
Favs: 7
Retweets: 0
linkVlado Vince
@mejs
I *could* make a whole new keyboard. That DIY guide included schematics for a keyboard board, but that would mean getting a whole new PCB, key switches etc. Instead, I'm thinking I just use a micro controller, map out the keys and use GPIO pins to translate a USB keyboard?
12/14/2020, 8:21:48 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
So this is pretty cool! Without too much difficulty I got a composite image output on the screen (nothing on it since I'm still waiting on ROM and RAM). However, I did discover an issue with the PCB design that I had to fix...
12/15/2020, 10:55:06 AM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
So before the video output goes out of the board, it passes through one of these BC108C transistors. But nothing was coming through: it turns out that this PCB design had that connection missing! I soldered a messy jumper and I'll be emailing the designer to let him know.
12/15/2020, 10:59:00 AM
Favs: 6
Retweets: 0
linkVlado Vince
@mejs
Here's what that looks like on the board design and schematics. Missing connections circled in red. My guess is a draft version got uploaded to Josip Perušanec's site, because I know he made those and you can see one of the connections on a photo of the board
12/15/2020, 11:45:07 AM
Favs: 6
Retweets: 0
linkVlado Vince
@mejs
Still waiting for that EPROM to try out the Orao😫 It was supposed to arrive on Tuesday but due to holiday mail chaos and the snow storm looks like I might get it tomorrow.
12/18/2020, 2:03:46 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
After a short holiday break, I'm back with more old electronics -- the Eagle has booted! Even though it's a much easier build than Galaksija, this Orao clone isn't super well documented online so I had to figure out a few extra things, in addition to the unfinished PCB...
12/26/2020, 12:45:23 PM
Favs: 6
Retweets: 0
linkVlado Vince
@mejs
As a reminder, I first had to make two missing connections to get video output -- they were missing from the PCB file... https://twitter.com/mejs/status/1338876219308322817
12/26/2020, 12:45:25 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
Then I waited a bit to get the EPROM. When it arrived, I still couldn't get anything usable on the screen.
12/26/2020, 1:22:12 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
After a bit of oscilloscope analyzing, I confirmed that the address bus and data bus on the 65C02 CPU were not working at all! This had me a bit stumped for a while and I spent time checking my logic ICs and the programmable F16V8CZ logic that's used on this clone
12/26/2020, 1:22:13 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
But then I went back to the datasheet for my CPU, a WDC W65C02S. And I noticed some interesting stuff about the Bus Enable (BE) pin. Interestingly, on the board BE (pin 36) wasn't connected to anything.
12/26/2020, 1:22:14 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
So I tried a few things, like connecting BE to ground. There was something happening on the data bus! But I still didn't have all I/O working. Thankfully, Stack Exchange saved the day. Apparently these are the only 65C02s that need this. https://retrocomputing.stackexchange.com/questions/1398/what-are-the-normal-signals-on-a-65c02-in-an-apple-iie
12/26/2020, 1:22:15 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
Per the suggestion, I hooked up 5V w/ a 3k resistor to BE pin and both the data and address buses lit up (figuratively!). But I was still getting gibberish on the screen...
12/26/2020, 1:22:18 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
I was stumped again. I confirm that the RAM was working, but nothing was being read from the 27256 ROM. I went back to the datasheets, but still couldn't figure notice anything. Then I looked at the schematic again and noticed a weird set of pins labelled ROM SELECT...
12/26/2020, 1:22:20 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
By using a jumper, you can connect either ground or VCC to A14 on the EPROM. I had it connected to ground (using a nut since I couldn't find any jumpers), so I moved it to VCC.. and voila, I got a prompt on the screen!
12/26/2020, 1:22:22 PM
Favs: 13
Retweets: 2
linkVlado Vince
@mejs
So what's next? I first want to fix the image which is still a bit messy -- this will probably be some experimenting with resistors and capacitors. I did a bunch of this with Galaksija so I'm not super concerned about it.
12/26/2020, 1:22:23 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
Then I'll try to use an Arduino to emulate the keyboard! This is the part of the project I'm most excited about, since it's something new and I don't even know if it will work. For now I can type by shorting the connections in this small keyboard connector socket.
12/26/2020, 1:22:25 PM
Favs: 6
Retweets: 0
linkVlado Vince
@mejs
EAGLE EXTENDED BASIC
23534 BYTES FREE
12/26/2020, 4:09:00 PM
Favs: 6
Retweets: 0
linkVlado Vince
@mejs
Fixed the image using my now traditional solution - add an LED to it! Writing this one line took 5 minutes, need a working keyboard asap 😬
12/26/2020, 9:28:53 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
I've got Arduino keyboard proof of concept working.. kind of.
12/26/2020, 10:16:47 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
Orao keyboard project update: I have a PS/2 keyboard connected to Arduino and I can type a total of 6 keys: đ, š, -, ;, space and P 🤓
12/28/2020, 10:35:57 AM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
I wanted to use the USB host shield, but it failed to recognize either of my 2 keyboards so I just went with ps/2 which is well supported by Arduino libraries. Too bad tho because that takes 2 I/O pins.
12/28/2020, 10:35:58 AM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
Orao uses the keyboard by shorting connections between 6 data lines and 10 address lines. I've connected the data lines to Arduino, and when I press a button it sinks them (logic LOW) to type. Still working on address lines though.
12/28/2020, 10:36:00 AM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
I gave up on trying to replicate address signals by the Arduino and instead I'm going to do this old school - I have a working prototype that relies on transistors!
12/29/2020, 8:45:22 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
Here's how it works -- it's very simple. I have 6 "KB" lines connected to Arduino IO ports. On the Orao these go into an 74LS257 multiplexer which connects them to D4-D7 data lines. This is great if I need only 6 keys, as grounding those connections produces 6 characters.
12/29/2020, 8:45:25 PM
Favs: 7
Retweets: 0
linkVlado Vince
@mejs
But I need some sort of way to get the remaining 54 keys. Orao selects those by connecting those data lines to address lines A0-A9. I don't need to connect AO since that's the default. So that leaves 9 connections to be made, when needed.
12/29/2020, 8:45:28 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
At first I was trying to produce the appropriate frequency through the Arduino, with no luck. Then I realized -- if I have a way to make those connections only when necessary, I can connect the actual address lines and control them from the Arduino!
12/29/2020, 8:49:42 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
So for each "special" key (ie not one of the first 6), Arduino will send two signals - it will lower the logic level of IO connecting to the Orao data line, and set high level to an IO connected to a transistor connected to an Orao address line!
12/29/2020, 8:49:44 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
For some reason I wasn't getting the proper signal through the emitter, but if I connected a diode between the transistor base and Arduino data IO/Orao data (KB) line, and Orao address line to the collector - it works!
12/29/2020, 8:52:15 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
Here's the code. To type in "R": Arduino IO 6 is lowered (data IO) and IO 9 (address line selector) is raised for 25 milliseconds.
12/29/2020, 8:54:12 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
It works, and it works pretty well! Using one transistor I was able to double the number of keys available to me. Theoretically, with 8 more transistors (remember, I don't need one for the first 6) and 48 more diodes (phew) I will have the whole keyboard.
12/29/2020, 8:56:23 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
I'm still testing this before I order supplies. I also need to test it with a teensy, since Arduino Uno doesn't have enough IO (I need 15 + 2 for PS/2 data and clock lines). But I'm excited - this was very fun, and as far as I know this is the first Orao PS/2 "adapter"
12/29/2020, 9:00:12 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
If you're enjoying this thread, please take a moment to read about the devastating earthquake in Croatia and what you can do to help. Many families have lost homes and are now displaced during a pandemic. Thank you! https://twitter.com/mejs/status/1343994353128247297
12/29/2020, 9:02:55 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
My transistors, sent to me from @Tinkersphere less than 10 miles away, are still in Florida so no working keyboard yet https://twitter.com/mejs/status/1345073055496863750
1/2/2021, 11:58:51 AM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
I *may* get my transistors tomorrow, so getting ready by setting up my Teensy. First step - solder headers
1/5/2021, 5:12:54 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
I just want to take a moment to note how ridiculous it is that I'm about to use the absurdly powerful teensy 4 with a 32 bit 600 Mhz M7 to emulate a keyboard for the poor old 8 bit Orao running on a 1 Mhz 6502 😇
1/5/2021, 5:39:36 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
The Teensy may not be the best controller for this *sigh*
1/5/2021, 6:33:04 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Here's a pretty much functional Arduino PS/2 keyboard adapter for Orao.
1/7/2021, 10:45:23 PM
Favs: 8
Retweets: 0
linkVlado Vince
@mejs
I'm still having trouble getting the shift key to work. In the meantime, this switch serves as Shift.
1/7/2021, 10:48:54 PM
Favs: 9
Retweets: 0
linkVlado Vince
@mejs
So I haven't really had the time to play with the Orao in the last two months. I still need to figure out why my Arduino PS/2 adapter crashes the CPU, but tonight I burned another ROM kindly given to me by another enthusiast and now Orao speaks BCS 🤓
3/14/2021, 12:52:05 AM
Favs: 10
Retweets: 0
linkVlado Vince
@mejs
I know only one program
3/14/2021, 11:33:22 AM
Favs: 10
Retweets: 0
linkVlado Vince
@mejs
So let's talk about ROMs for a second. There are two ROM versions for the Orao: ver. 102 and 103. 102 speaks BCS while 103 is in English. 103 also has an updated monitor program and advanced BASIC. Programs are incompatible between the two (screenshots from MAME)
3/14/2021, 12:20:58 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
The original Orao came with two 2764 EPROMs, one with BASIC, the second with the monitor. The clone I built comes with a 27256 EPROM, so both 102 and 103 fit on one chip. You use a jumper to select which ROM to load.
3/14/2021, 12:26:39 PM
Favs: 6
Retweets: 0
linkVlado Vince
@mejs
Finally getting ready to finish the Orao PS/2 keyboard project: got the MT8816 analog switch matrix and slowly mapping the keys (luckily at least I had PS2 hex codes from my earlier transistor attempt)
3/22/2021, 6:39:02 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
Success! I have the first (afaik) functional Orao PS2 converter!
3/23/2021, 12:47:48 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
As proof, here's an exponential function in BASIC 😅
3/23/2021, 12:50:04 AM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
It's a drawing of a cup. Impressive, I know
3/23/2021, 12:56:55 AM
Favs: 7
Retweets: 0
linkVlado Vince
@mejs
I'm very excited to release the first version of my orao_keyboard PS/2 interface! https://github.com/mejs/orao
3/23/2021, 9:46:29 PM
Favs: 2
Retweets: 1
linkVlado Vince
@mejs
This is the first time I've tackled a project like this, and I almost gave up after my first plan didn't pan out. So happy I continued on. The next step is to design a board --another new thing-- and then get it manufactured!
3/23/2021, 9:46:30 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
I may work some more on the code and make it more portable and cleaner, but I'm very happy with how this all came out. The interface supports all Orao keys and key combinations including PF keys, control and shift key support.
3/23/2021, 9:46:31 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Due to the physical difference between modern keyboards and Orao's keyboard, I've made a few keys reassignments - Insert is used for * : Orao key, Home is used for / ? Orao key, Backspace is used as left arrow key because left arrow effectively works as backspace
3/23/2021, 9:46:32 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Getting control and shift keys working was the biggest challenge, but MT8816 switch matrix was the perfect tool for the job, and once I moved to using the PS2KeyAdvanced library, getting all the keys to work was a breeze https://github.com/techpaul/PS2KeyAdvanced
3/23/2021, 9:46:33 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
Inspiration to use MT8816 came from @msolajic's galaksija-keyboard-interface project, and the related C64-keyboard project. https://github.com/msolajic/galaksija-keyboard-interface
3/23/2021, 9:46:33 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
Now that I have full control, I can finally do some fun stuff with the Orao!
3/23/2021, 9:46:34 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
OMG look at this beast, a distant cousin of Orao which was partially based off of Ohio Scientific Superboard https://twitter.com/gravislizard/status/925863335928545280
3/26/2021, 4:40:52 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
Before the Orao, PEL Varaždin released the Galeb (seagull), which was based on Compukit UK101...
3/26/2021, 4:43:16 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
And Compukit UK101 was in turn based off off Ohio Scientific Superboard II
3/26/2021, 4:44:58 PM
Favs: 5
Retweets: 1
linkVlado Vince
@mejs
After an evening of struggling with the tape input, I finally got a program loaded onto the Orao!
3/27/2021, 12:05:32 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
Here's the Orao demo
3/27/2021, 12:06:02 PM
Favs: 7
Retweets: 0
linkVlado Vince
@mejs
I tried to play a port of International Karate for the Orao, originally released for the ZX Spectrum, but it freezes after a few seconds. The same thing happens if I try to play it in MAME, so there has to be an issue with the tape file. Too bad!
3/27/2021, 8:13:31 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
But the cool thing about this port is that it was done by KMI "Borovo", the Young programmers club Borovo (Klub mladih informatičara Borovo), who were based in Borovo, a small town in Eastern Croatia and home to the Borovo shoe factory (formerly Bata shoes)
3/27/2021, 8:17:07 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Ž. Bistrović, a member of KMI "Borovo" also developed a full fledged text editor "Teksted" for the Orao, which included save/load and print functionality, as well as basic formatting, so it could be considered a word processor.
3/27/2021, 8:20:59 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
Unfortunately there is so little information about KMI "Borovo" available online. I would love to learn more, because it seems like their work is proof of Orao's success as a machine for computer education (Orao was designed to be used in schools) https://hr.wikipedia.org/wiki/KMI_Borovo
3/27/2021, 8:23:46 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
Another KMI "Borovo" production: world geography database, featuring all 169 (!) countries, a world map and info including: capital city, population, area, currency and three languages.
3/27/2021, 9:53:16 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
I was surprised to see Slovene and Croatian as included languages for Austria, but per Wikipedia they are indeed recognized languages there, and the "ex-Yugoslavs" are indeed the second largest ethnic group in Austria.
3/27/2021, 9:58:38 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
I recorded a short demo of the Geografija program by capturing composite video output from the Orao https://vimeo.com/529865497
3/27/2021, 10:16:48 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
A KMI Borovo port of Rocky for the ZX Spectrum. The original game had to be renamed to Rocco because of licensing issues, but I guess the young Borovo programmers didn't have such issues... https://spectrumcomputing.co.uk/entry/4198/ZX-Spectrum/Rocky
3/27/2021, 11:12:15 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
I wish they had ported Kung-Fu for the ZX Spectrum, because this is one of the first games by Yugo developers (Duško Dimitrijević and Damir Muraja) sold and released abroad (published by Bug-Byte Software in the UK in 1984). Here's an interview with them https://www.youtube.com/watch?v=ZsOohqFIQ0U&list=WL&index=28
3/27/2021, 11:22:56 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
I played some Eagle (a clone of Defender), and managed to get on the leaderboard. Interestingly there are already people on the list. I wonder if these folks were members of the KMI Borovo club?
3/28/2021, 12:49:33 AM
Favs: 5
Retweets: 1
linkVlado Vince
@mejs
Last night I recorded the KMI Borovo high-res graphics demo for the Orao. That hat took well over an hour to render! I'll be uploading the whole video for historic preservation. Very cool demo!
3/28/2021, 12:04:47 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
While the video is processing, I give you the KMI Borovo logo gif, for all your ~aesthetic~ needs
3/28/2021, 2:03:36 PM
Favs: 5
Retweets: 1
linkVlado Vince
@mejs
And here's the complete, 2 hour long demo. Enjoy! https://vimeo.com/530026394
3/28/2021, 2:11:30 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Tonight I played the Igra (😅), a short text adventure for the Orao which must have been written a few years ago, since the author put their email in the BASIC comments. It was kind of difficult to extract this out of a dump file I found it in http://www.deltasoft.com.hr/projects/downloads/tap/igra.dmp
3/29/2021, 9:34:09 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
In the game you're watching over an elderly neighbor's house, while she's out to pick up her pension check. It's simple and sweet. I enjoyed it! I'll try to reach out to the author and ask if they're ok with me hosting it in a more easily portable format.
3/29/2021, 9:34:12 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
I've moved onto a more complex adventure: Ukleti dvorac (Haunted Castle), ported from the ZX Spectrum and written by Dejan Ristanović and published as part of adventure game programming guide in Računari u vašoj kući magazine Issue 3.
3/29/2021, 11:49:24 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
More about the legendary Dejan Ristanović. https://twitter.com/mejs/status/1317896212796874754
3/29/2021, 11:50:30 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
I've also played his text adventure for Galaksija, Ziul http://retrospec.sgn.net/users/tomcat/yu/Galaksija/MiscGames/Html/Ziul.php
3/29/2021, 11:54:11 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
I really want to play two other Yugo text adventures for the ZX Spectrum - Kontrabant (about smuggling parts from abroad to build your own computer 🤣) and Vruće letovanje (a family trying to go on vacation to the seaside). They haven't been ported to the Orao unfortunately.
3/29/2021, 11:58:37 PM
Favs: 10
Retweets: 0
linkVlado Vince
@mejs
Tonight I've tested the graphic capabilities of the Orao by converting some images to 1 bit bitmaps, such as this photo of the famous Vitić neboder apartment building
3/31/2021, 11:36:06 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
https://twitter.com/mejs/status/1334987312867012617
3/31/2021, 11:36:26 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
I created the graphic by using the image importer in Željko Perić's Orao Basket set of tools https://sourceforge.net/projects/orao-basket/
3/31/2021, 11:38:10 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Željko is the author of "Igra" text adventure game https://twitter.com/mejs/status/1376709297153974272
3/31/2021, 11:39:45 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
I'm documenting articles about the Orao. There's actually surprisingly little I can find, at least until 1986 when Svet Kompjutera started their monthly "Orao in school" column. I did find this short write up about KMI Borovo in issue 12/86.
4/3/2021, 10:53:07 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Interestingly, in Svet kompjutera issue 1/87 there is a software ad by PEL (manufacturer of the Orao) advertising the programs developed by KMI Borovo and directing folks to order them from the young programmers club directly.
4/3/2021, 11:03:54 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
From these ads I've also learned about Orao 64, an upgraded version with 64Kb of memory, incompatible with the original Orao. It was shown at Sajam tehnike '86 in Belgrade, but apparently it was never mass manufactured. https://hr.m.wikipedia.org/wiki/Orao_64
4/3/2021, 11:16:11 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
In SK 1/87 there's speculation about what it would take to make a compatible mouse for the Orao. As far as I know no one ever made one. This could be an interesting project.
4/3/2021, 11:19:50 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
I'm working on emulating an RS232 printer for the Orao using a USB serial adapter. I'm struggling to get good translation, but getting there. Working with 2400 baud (highest for the Orao) and 7 bits. Right now I'm getting hex 5F for letter A, instead of 41, so more work needed
4/11/2021, 12:10:04 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
I fixed a few bugs in the orao_keyboard Arduino adapter code tonight after playing some games and running into issues. I've fixed the positioning of š and đ keys, as well as repeating keystrokes on most keys. I still need to resolve concurrent presses. https://github.com/mejs/orao
8/10/2021, 10:11:39 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Bringing out the Orao in prep for @vcfederation East. I plan to finally manufacture the Orao PS/2 keyboard interface and show it off at my "Nonaligned technologies" exhibit. I now have the whole thing working with just a MT8816 and an Arduino Nano.
9/17/2021, 6:43:06 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
Board done and sent to jlpcb for production 🤓
9/17/2021, 9:54:26 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
And here it is! My first PCB prototype is here for the orao_keyboard PS/2 adapter for the Orao. I'm still testing it, but so far everything seems to work great!
9/27/2021, 7:41:03 PM
Favs: 5
Retweets: 1
linkVlado Vince
@mejs
With the hardware ready, I'm debugging the final software issue -- concurrent keypresses. The problem is, while the Arduino PS2KeyAdvanced library handles repeats with no issue, as soon as you press another key it will no longer detect the original key press.
9/27/2021, 11:54:25 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
this is a problem in games, especially when you need to press a left/right key + jump to jump in a specific direction.
9/27/2021, 11:54:25 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
So I came up with an alternative approach, where instead of automatically stopping the MT8816 instruction after 100ms like I did initially, Arduino waits for the break code from the key (32862 is the break code for "["). This... sort of works.
9/27/2021, 11:54:26 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
As you can see in my Manic Miner test, I can jump to the right. Since I hold the right key pressed, it stays on with the jump. But then the release of the jump key sends its break code, causing all keys to reset. So I can't continue to the right without having to press it again.
9/27/2021, 11:56:06 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
I think I'm going about this the wrong way. This shouldn't be fixed by tricking the dumb MT8816 -- there has to be a way for the Arduino to keep the key-repeats throughout another key being pressed, but I just can't figure out how.
9/27/2021, 11:58:24 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
I finally added a proper PS/2 port to my orao_keyboard adapter. I rushed to get this done for vcfed so I improvised with one pulled from an old motherboard. Alas, the hole I drilled for the headphone jack is in the way so I'll need to drill another, and then cover this one 😬
1/24/2022, 6:53:08 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
I'm dusting off my Orao RS232 interface project after 2 months, so let's first connect the thread that got separated a while ago: https://twitter.com/mejs/status/1483222178762051586
3/27/2022, 3:19:56 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
tldr, Orao had a built in RS232, mostly relying on software, but it only had TX implemented, for use with printers. Instead of trying to make this work two ways, I decided to build a whole separate interface using a 6551 ACIA https://twitter.com/mejs/status/1483831666380578819
3/27/2022, 3:21:18 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
I started this project but then got busy. Today I finally completed the clock circuit (on the top of the breadboard) which runs at ~1.84 Mhz. I'm also using a USB TTL rs232 adapter since the 6551 outputs TTL. So far so good.
3/27/2022, 3:23:19 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Where I'm getting stuck now is controlling the ACIA. Orao reserves A000-B000 address space for peripherals (technically I guess I could go to C000 since there's no DOS on it either). But I'm absolutely failing at how to assign this address space to the ACIA.
3/27/2022, 3:25:28 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
The 6551 uses the Chip selects pins to select the address, in conjunction with the register selects to program, read, and write.
3/27/2022, 3:27:09 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
What I *think* I need to do, is a decoder like the 74LS138 to assign A000 to the ACIA. I conceptually get this, but I don't fully *understand* it. I'm following this guide https://mansfield-devine.com/speculatrix/2016/12/zolatron-address-decoding/
3/27/2022, 3:29:45 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Also I don't actually have a 74LS138 on hand, so I figured I can use a programmable GAL (or in my case EEPLD) which was used instead of the 74LS138 on my Orao clone design. But I first need to understand how it was implemented. (1st image is GAL implementation, 2nd is original)
3/27/2022, 3:32:39 PM
Favs: 3
Retweets: 1
linkVlado Vince
@mejs
Making progress. I built a simple address decoder using two 74ls10s. I'm assigning A000-B999 to the ACIA. And I think it's working! Still not getting serial output though.
3/28/2022, 10:45:05 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
Progress with the Orao serial interface is slow, but moving forward. I can transmit some bytes, though not reliably yet
3/31/2022, 7:46:50 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
My waves look a bit messy
3/31/2022, 8:05:15 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Well it's probably because of the clock???
3/31/2022, 8:08:52 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Here's my test code. This sets things up (8N1, 300 baud), reads the status, writes the status out (00) and loops around.
3/31/2022, 9:28:10 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Starting to build the Orao serial interface prototype 🤓
4/8/2022, 6:17:04 PM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
The serial interface prototype for the Orao is complete. Messy, but functional. Software still needs work though.
4/9/2022, 12:31:12 AM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Ok this was a wild ride that took way too many hours, but I finally got reliable serial output through my Orao serial interface
4/11/2022, 8:28:42 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
What had me stumped? The W65C51 ACIA uses 4 registers for control and I/O, which you tie to address lines. Simple right? Well not unless your address lines go through a multiplexer before they connect through the expansion port.
4/11/2022, 8:34:32 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
I realized something was off with register selects when none of my settings would apply, but I was able to issue TX loops only when loading values that the control register would accept, and then they would fly at 19200bps 😂
4/11/2022, 9:00:32 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Anyway... I also had to implement a delay loop due to a bug on the WDC65C51. Luckily, I could use the PHY/PHX and PLY/PLX function to save and restore x and y registers, since I'm using a 65c02 cpu. But the Orao doesn't know about those instructions, so it puts @@@.
4/11/2022, 10:30:38 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Now, if I had the regular old 6551 ACIA, there would be no need for delay hacks since WDC introduced this bug in the 65c51, but alas. I'm kind of annoyed by this, because my code wouldn't work on the real Orao with this delay.
4/11/2022, 10:36:03 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
That's a problem for the day when I finally do find a real Orao.
4/11/2022, 10:36:34 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
And now we've got two way serial communication. This was typed on the laptop, read by the Orao, and written back to the laptop.
4/12/2022, 12:17:42 AM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
And now with a few handy routines from the Orao's ROM I have two way communication - I've got a terminal running on the Orao!
4/12/2022, 1:50:07 AM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
So I connected the Orao to my favorite telnet magazine @caraesten and @lo_k_ferris's A New Session via tcpser and it kind of works?? 32x32 text mode is severely limited, some characters are just lost and oh the BCS diacritics seems to have been used in place of some ASCII codes
4/12/2022, 11:33:55 PM
Favs: 6
Retweets: 1
linkVlado Vince
@mejs
So not unexpectedly, Orao reads [ as č, \ as ć, ^ as š and ] as đ 🤪
4/12/2022, 11:37:21 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
welcome to YUSCII
4/12/2022, 11:47:40 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
This criticism of YUSCII on wikipedia seems... pretty reasonable
4/12/2022, 11:48:44 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
If you thought YUSCII was bad wait until you find out about SRPSCII
4/12/2022, 11:51:07 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
sorry, I write all my characters with novisad encoding, you wouldn't know it
4/12/2022, 11:51:59 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Looks like some characters were getting dropped at 19200. Slowing it down works better. These Ćs instead of backslashes look kind of nice??
4/13/2022, 12:42:37 AM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
The future that never was. Orao connecting to SEZAM BBS??
4/13/2022, 12:43:32 AM
Favs: 6
Retweets: 0
linkVlado Vince
@mejs
My Orao terminal program is now kind of functional?? Previously I ran RX and TX separately by manually starting routines, but now I have a whole program! It's mostly in machine code, but BASIC handles keyboard input
4/13/2022, 6:13:10 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
This was very complicated for my brain because I had to implement nested procedures and I'm a perpetually struggling programmer. Going to BASIC for keyboard input is sort of a hack and adds delays to the process. But it works!
4/13/2022, 6:15:10 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
This is the BASIC portion. It clears the screen, initiates the serial adapter, and starts checking for input (address 4096/hex 1000). If there are no key presses it loops to address 8199 (hex 2007) where the code for RX lives.
4/13/2022, 6:24:32 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
If a key press is detected, it reads its keyboard code and stores it as B. It then pokes B to address 4176 (hex 1050) and loops back to RX and keyboard check.
4/13/2022, 6:24:35 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
This is the (partial) machine code. Address 2000 reads the stored key press from address 1050, and then calls the TX routine from address 1100. The RX routine is here from address 2007 through 201B. This needs cleanup, but it works.
4/13/2022, 6:24:37 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Found another issue with my terminal. It works well until it fills up the screen (32 rows), but if it needs to scroll up, characters will then start to get lost if it's continuously receiving, even at 300 bps. This must be a timing issue, and potentially a resources limitation.
4/13/2022, 9:17:50 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
My improvised fix for this was to map a clear screen button, so that I can refresh the screen when this issue occurs. It's not pretty, but it is functional. The whole thing is very difficult with only 32 columns.
4/13/2022, 9:20:09 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Playing Zork via http://telehack.com arpanet simulator. This is probably the first time an online game has been played on the Orao 🤔🤓
4/13/2022, 10:35:11 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
No PDP-10 should be without one!
4/13/2022, 10:36:57 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Brrrr scary!
4/13/2022, 10:46:20 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
I added some settings set up at the start of the terminal program...
4/15/2022, 12:10:57 AM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Made a few changes to my Orao terminal code. The terminal loop is now completely done in machine code, so performance is much better. Only settings selection is done in BASIC.
4/17/2022, 6:16:23 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
I also automated screen clearing when all 32 rows get filled out. The loop checks address 00E8, which shows what row is active. If it's 32 it calls a routine on address 1018 to clear the screen. Not ideal, but better than having to press a button to clear the screen
4/17/2022, 6:18:26 PM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
I added a MAX232 to the serial interface to convert TTL to RS232 (I previously connected it to a USB TTL adapter). This will let me connect the Orao to other serial devices 🤓
4/19/2022, 12:21:00 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
The last thing I want to add to the prototype is a demultiplexer to decode the address lines for register selects. Right now I'm getting those lines directly from the 6502, which is messy with wires hanging on the side.
4/19/2022, 12:23:27 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
So now I have CTS/RTS for hardware flow control, and I also added some LEDs to my serial adapter because everything is better with LEDs! Also comes in handy for troubleshooting. Red is RX, green is TX.
4/20/2022, 6:05:56 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Still thinking about how to resolve the issue of the 32x32 screen getting filled too quickly, where I currently just clear the screen at line 32. But that way I often miss stuff in those first 32 lines. What if getting to line 32 would set CTS high and stop transmission?
4/20/2022, 6:53:32 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
I kind of got this working, but using DTR. I just couldn't get the command register to successfully raise RTS when prompted (on TTL it's low enable). So I tied DTR on the 65c51 to RTS and it stops the transfer until I press enter. But a few bytes do escape. Orao is slow.
4/20/2022, 9:26:32 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
it seems to lose almost 160 bytes at 4800 baud! it's better with only about 50 lost on 2400, while 300 doesn't miss any. Everything points to Orao needing really slow RX when getting more than 32 rows of text.
4/20/2022, 9:35:02 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
well d'oh of course I lost bytes when I lifted the block before erasing the screen. Flow control is working well now that I put the DTR code after the screen erase routine.
4/20/2022, 11:32:45 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
I guess I'm still losing a single byte but you know what I can live with it, it's the 80s and we have a computer communicating through a modem how crazy is that
4/20/2022, 11:40:10 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
What's left to do for the Orao serial adapter before I manufacture a PCB?
software: implement shift key detection. Rn I can't type special characters like !, @, # etc.
hardware: see if there is a way to select registers directly from address lines on the expansion connector
4/21/2022, 2:05:38 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
What's new in ver 0.5 of the Orao terminal? We now have (partial) ASCII instead of YUSCII! (Here Ć now correctly shows up as \). Still need to deal with these lowercase ćs which should appear as |. Drawing characters with 8 bytes is fun!
4/29/2022, 2:03:24 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
YUSCII was the Yugoslav Standard Code for Information Interchange and while it sounds cool, it had some problems...
4/29/2022, 2:07:11 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
My conversion to ASCII is complete, but along the way I found some discrepancies between YUSCII and what Orao is using. E.g, on the Orao ć=7C, while in YUSCII it should be 7D. Need to do more research to understand why it is that way.
4/29/2022, 11:38:52 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Unfortunately all this work will have limited application, since to fully take advantage of proper ASCII decoding I would need to make an 80 column card for the Orao, and that's beyond my current scope.
4/29/2022, 11:41:12 AM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
The real problem with some of these discrepancies is that I'm doing all this testing on the clone of the original machine, and it's possible some hacks were made. I really need to get a real Orao.
4/29/2022, 12:18:30 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
For this last bit of Orao work I'm doing it old school - printing out the listing of the whole ROM so that I can take a deep dive and understand its routines better
5/1/2022, 1:22:44 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
I'm doing that old school too - by emulating a printer and using Orao's built in disassembler. I then take the serial log on my host computer and print it. Silly, yet somehow fun.
5/1/2022, 1:25:12 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
I wish I took you home 😢https://twitter.com/mejs/status/1517962769974403073?t=jXtP1Q3pFdW-hJr0oE3UXw&s=19
5/1/2022, 1:27:39 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
I uploaded the Orao 103 ROM listing to Github. I think this is the first time its available like this (not just a dump). I'll also do the earlier 102 version. https://github.com/mejs/orao/blob/master/manuals/orao_103_rom_listing.pdf
5/1/2022, 2:27:47 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
I'm trying to finish up the Orao RS232 interface project and send a prototype board for manufacturing, but I'm still stumped with address line decoding on the expansion port, so I'm still using bodge wires straight from the CPU
5/22/2022, 12:50:24 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
My problem is here.. somewhere. If I use the expansion port, I grab address lines A11 and A12 after they've been multiplexed in these 74ac257s. They get signal QA and QB from the 74AC393, and also PHI0 going into the 74AC257
5/22/2022, 12:58:09 AM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Here's what that looks like on the expansion port. The actual A11 signal is low and you can kind of see it behind
5/22/2022, 12:59:34 AM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
This is A11 straight from the CPU at the same time. So, I assumed, I need to get rid of all the stuff that was multiplexed on top of it.
5/22/2022, 1:00:40 AM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
I hacked together something using a NAND gate and chip selects that are working fine. But now I see another problem. The positive pulse is half the length on the expansion board vs straight from the cpu
5/22/2022, 1:04:07 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
I *think* this is why I can't get this to work from the expansion port, but I don't understand why it's happening. The whole role of the 257 multiplexers in this computer is confusing and I don't fully understand it. There's a lot going on in the schematic http://www.deltasoft.com.hr/projects/images/orao2007_schematic.png
5/22/2022, 1:06:23 AM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Oh god I kind of got this working by tying PHI0 instead of PHI2 on the ACIA, but now my receive routine is broken. I can TX fine tho. WHYYYY
5/22/2022, 8:10:38 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
this is so frustrating. I feel like I'm so close to finally resolving this, yet so far at the same time.
5/22/2022, 10:31:51 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
I still haven't resolved the hardware issues, but I re-wrote the machine code portion of the Orao RS232 terminal in 6502 assembly and I finally uploaded it to github. This helped me shrink the tape file, so instead of a full min I can now load it in 15 sec https://github.com/mejs/orao/tree/master/orao_rs232
5/24/2022, 12:32:14 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
orao rs232 adapter board is almost complete. I'm thinking about sending it to manufacturing despite my address line bodge wire problem...
5/28/2022, 11:12:48 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
So I added a pair of switches at the bottom so that I can switch to the bodges if necessary. Not a pretty hack but it might have to do for now. Purple looks pretty great!
5/29/2022, 12:38:56 AM
Favs: 4
Retweets: 0
linkVlado Vince
@mejs
The real orao has a different expansion port than my clone -- with 40 connections. So I designed an adapter board to order along with the rs232 adapter.
5/29/2022, 4:45:58 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
But for some reason it doesn't have a 5V connection, and I'm not sure if I could reuse any of these to power the ICs on my adapter. I'm very confused how they designed an expansion port without VCC.
5/29/2022, 4:47:47 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
I placed the pcb order, despite the few remaining issues. Hardware projects like this really make me appreciate the cost of all the community expansions, not just in terms of time but also just sourcing components. This very simple board requires $36 just in parts.
5/29/2022, 7:40:21 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
With shipping that's about $45. 5 PCBs + shipping is $25. Sure, with economies of scale you could get this down a bit, but I don't think I could get this simple serial adapter under $30, not accounting for assembly time.
5/29/2022, 7:42:16 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Oh my god. I resolved this. After two months. By getting an original 6551 ACIA instead of the 65c51. I feel so relieved and annoyed at the same time. I have no idea why it works now. Doesn't matter. It's done. https://twitter.com/mejs/status/1516271233284857857
6/3/2022, 9:48:15 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
I got the original 6551 in order to test my adapter with the original Orao, since the original Orao uses the original 6502 and not 65c02. 65c51 has a bug that requires an instruction to fix that's not present on the 65c02. So 6551 was always needed. 2 months, 2 months it took me!
6/3/2022, 9:50:26 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Woohoo! My boards are here. Time to finally finish this project.
6/6/2022, 11:46:36 AM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Aaand Orao RS232 adapter is complete and working!
6/6/2022, 6:12:18 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
Since I resolved my register select issue by using a non CMOS 6551 ACIA, the space I saved for the spdt switch is unnecessary. Instead I just added a pair of jumper wires.
6/6/2022, 6:14:28 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
There are two connectors - DB9 and open headers, which I'm using with an RJ45 port (since I've got one of those USB-C/RJ45 serial adapters for using with network switches). It includes RX, TX, CTS and RTS. The header might also comes in handy for troubleshooting.
6/6/2022, 6:20:33 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
And here it is mounted on the edge connector adapter! I'll be testing it soon on a real Orao, so this adapter is needed for the Orao's huge 40 pin single side edge connector.
6/6/2022, 7:08:59 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Welp I messed up the DB9 male pinout. Alas I'll have to fix it in V2. But! I successfully tested a real modem (previously I had only done emulation with tcpser) and it works! I placed a call to my Thinkpad and had a nice two way conversation.
6/7/2022, 12:16:50 AM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
A few bodge wires later and we're in DB9 business! Who wants to dial up?
6/7/2022, 9:29:13 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
I don't know what it is, but dialing up with a real modem just hits different
6/7/2022, 10:17:53 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Aren't you gonna pick up?
6/7/2022, 10:22:08 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
About to release some software
6/8/2022, 9:33:41 PM
Favs: 5
Retweets: 1
linkVlado Vince
@mejs
The three rectangles
6/8/2022, 9:50:33 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
I'm amazed that I got this recorded and then loaded from real tape on the first try
6/8/2022, 9:51:10 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
It's a rainy Sunday. Time to make some DIN-5 cables!
6/12/2022, 12:24:08 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
This is my remaining prep for the real Orao, which uses DIN-5 for tape I/O. I need to make a DIN-5 to 3.5mm cable
6/12/2022, 12:26:41 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
And done! Can't wait to try this out!
6/12/2022, 1:00:20 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
I got the updated edge connector adapter boards and now I have two fully assembled Orao rs232 adapters. All ready to try it out on the real Orao in a couple of days!
6/23/2022, 5:32:00 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
👀
6/28/2022, 8:39:54 AM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
Happy to announce that after year and a half of developing hardware and software for the Orao computer I now have two of them - version 102 (left) and 103 (right)
6/29/2022, 4:40:12 AM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
The 102 has this awesome sticker. I think I'm going to leave it on 😊
6/29/2022, 4:41:22 AM
Favs: 6
Retweets: 0
linkVlado Vince
@mejs
I need to check the boards more closely, but the only difference between the 102 and 103 should be the software version on the EPROMs. I've been using the updated 103 in my development.
6/29/2022, 4:43:16 AM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
The 103 turned on on the first try. The 102 had a partially damaged cable (which I already cut in this photos), so I had to re solder it to the PSU board. Unfortunately I couldn't reuse this white rubber holder.
6/29/2022, 4:45:55 AM
Favs: 2
Retweets: 1
linkVlado Vince
@mejs
Emulators and replicas are fine, but there is something special about using the real thing.
6/29/2022, 5:27:23 AM
Favs: 6
Retweets: 1
linkVlado Vince
@mejs
Yup, even tho the 103 has a different tag on the case, it uses the same 102 labelled board inside. Only the EPROMs are different https://twitter.com/mejs/status/1542066156735012865?s=20&t=GxX79r92kI-dOrYH4oCo1g
7/1/2022, 9:35:00 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Lol this 5V label is incorrect. The PSU outputs 8V to feed the RF modulator and then it's lowered to 5V for the rest of the machine via a 7805 voltage regulator. I'm glad I checked.
7/1/2022, 10:50:14 AM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
So I've been pretty quiet about the Orao rs232 project. tldr I obtained two Oraos and my tests in Croatia failed. I had limited tools with me, so I waited until I got back to NYC and luckily it looks like my circuit is fine - it's the 6502 that seems to have trouble with my 6551
7/11/2022, 9:46:40 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Here's the weird thing. The R6551 ACIA, that works great on my 65c02 clone, doesn't work at all with the UM6502 CPU on the real Orao. Nada. Zilch. Maybe because R6551 is TTL? 🤔
7/11/2022, 9:48:51 AM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
But! If I put the 65c51 I get it to TX so the adapter works! But the 65c51 has a bug that requires instructions that are only available on the 65c02 to fix (😵💫) so I don't know if that's the problem or what. The next step is I'll try the 65c02 in the Orao just to test
7/11/2022, 9:51:11 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Still troubleshooting but here's the Orao talking to my Compaq. Compaq can't talk back 😩
7/12/2022, 10:57:42 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Hmmm looking back it looks like I'm experiencing this exact thing again https://twitter.com/mejs/status/1528528798802665472
7/12/2022, 11:06:00 AM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
And we're in business! Finally, full RS232 communication on the Orao
7/12/2022, 9:17:32 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
This ended up being an issue with PHI2 line on the expansion port. First photo is what's exposed on the port, second is directly on the 6502
7/12/2022, 9:21:21 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
So I put in a bodge wire between pin 39 (PHI2O) on the 6502 and pin 27 (PHI2) on the 6551. Once I did this everything started to work
7/12/2022, 9:25:03 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
This is pretty annoying. I spent a long time troubleshooting things on my clone and reading documentation to build this according to spec. But now I'll need to first figure out how to get this working with the exposed line, and then re do the board.
7/12/2022, 9:55:26 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
My Orao with the rs232 adapter and the instructions manual
7/12/2022, 11:21:10 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Here's a quick demonstration of the Orao Terminal emulator (sans the loading). This is recorded from the real Orao.
7/13/2022, 6:32:02 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
I kind of want to give it a fun picture splash screen but that would double the load time which is already about 30 sec
7/13/2022, 6:34:02 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Let's look at the Orao a bit closer. This is the keyboard, it uses a ribbon cable to connect to the board. Pretty normal stuff. But, it is actually bolted onto the front case with machine screws which is an awful cost cutting measure
7/13/2022, 8:35:58 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Here's what that looks like. On this one the plate holding the keyboard got out of the machine screw so the keyboard was just dangling. I couldn't remove the machine screw without taking out the glued on front cover. Not very service friendly.
7/13/2022, 8:37:43 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
So instead I drilled the hole to make it bigger, got the machine screw inside and put a nut on it to hold it together. Not ideal but much better than what it originally was. They should have done something like that in the first place
7/13/2022, 8:39:42 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Here's my second modification. Unfortunately I had to replace this Iskra 10uf capacitor because the screen would start having issues after 10 minutes, which I correctly assumed was related to the capacitor.
7/13/2022, 8:41:15 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
I felt conflicted about doing it because this was one of the few components on the board that were manufactured locally (in Slovenia). There was another one which I left in place for now.
7/13/2022, 8:43:13 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
I did it! I've got a workaround for the PHI2 line on the Orao! I just added a NAND gate via a 74LS00 which slightly amplified the signal coming out of the expansion board and now the 6551 is happy. Time for another board revision 😅
7/14/2022, 10:38:59 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
I designed a new board with the edge connector built in. But I just had an idea of adding space for a rpi zero w so that modem emulation can be included. Hmmm 🤔🤔🤔
7/15/2022, 12:36:51 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
There's space... let's add it
7/15/2022, 12:37:58 AM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
I did it! This will be awesome
7/15/2022, 12:59:02 AM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
well I did not consider this fresh hell
7/15/2022, 4:12:34 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Yay the proof of concept works! RPi has a basic UART, and it's TTL so I connected it directly to the 6551 on my board. And there's a software implementation for CTS/RTS so it has full functionality for my modem emulator use case. I'll send the gerbers to manufacturing tonight!
7/15/2022, 7:12:21 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Here's the article I followed to set up the RPi Zero for serial directly (I previously used a usb adapter, even just for TTL): http://podsix.org/articles/pimodem/
7/15/2022, 7:14:06 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Unfortunately I burned my single RPi Zero W while troubleshooting... So now I've only got a single non wireless one that needs a USB NIC to connect to the network. Alas it's still good enough for testing
7/15/2022, 7:17:02 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
Boards ordered 😎
7/15/2022, 7:48:53 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
Until I can source a new rpi zero w, USB dongle it is 🤣
7/15/2022, 8:44:20 PM
Favs: 1
Retweets: 0
linkVlado Vince
@mejs
I finally got a Retrotink and omg this picture is so good. I've been cheaping out for years with crappy RCA HDMI adapters that always had trouble with PAL refresh rate. This is stable and beautiful 😍
7/15/2022, 9:07:09 PM
Favs: 0
Retweets: 0
linkVlado Vince
@mejs
ELIZA therapy session on the Orao not going so well
7/19/2022, 11:27:38 PM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
V3 of orao rs232 adapter is complete and tested! I ran out of solder so it doesn't have the DB9 port and RPi zero installed yet, but it works - with external power via barel jack or micro USB (!) And with no bodge wires. It's ready to ship! 🙃
7/21/2022, 11:32:00 PM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
I found some leftover solder and added the Pi Zero -- the test is successful and the Orao rs232/wifi modem is complete!
7/22/2022, 10:47:24 AM
Favs: 5
Retweets: 0
linkVlado Vince
@mejs
I made some additional changes to the orao_rs232 wifi modem... Flipped the RPi header so that it fits the RPi top down, as the headers are usually installed on them. This allowed me to test with a regular RPi and now I've confirmed it fits well
8/1/2022, 1:09:39 AM
Favs: 2
Retweets: 0
linkVlado Vince
@mejs
Orao Terminal has a loading screen now
8/1/2022, 11:57:37 PM
Favs: 9
Retweets: 0
linkVlado Vince
@mejs
Oh no what have I started
8/6/2022, 1:47:50 AM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
When there are no 32 column telnet/BBS resources around you might just have to start one yourself. Running with ease on @caraesten's dial a zine https://github.com/caraesten/dial_a_zine
8/6/2022, 1:49:50 AM
Favs: 3
Retweets: 0
linkVlado Vince
@mejs
I finally got some RPi Zero Ws to complete the orao WiFi modem
10/21/2022, 8:30:43 AM
Favs: 8
Retweets: 0
linkVlado Vince
@mejs
I've been wrapping up the Orao WiFi modem project so tonight I put together a short demo that includes loading the terminal emulator from tape, running it in wifi modem mode and connecting to a login screen on a telnet enabled BBS.
10/24/2022, 12:55:27 AM
Favs: 0
Retweets: 0
link