I got a printer and a tape interface for my 4-bit BASIC computer/pocket calculator Sharp PC-1248. I love this little toy because it has far more RAM than most users would ever need - almost 8K is available to the user. The printer is quick and tiny, too. The computer runs 150 hours from two CR2032, and the printer is powered by four AA batteries with unknown yet runtime.

Here's the device loading the program and printing the image. Sorry it's very blurry, I'm too excited to share it ASAP :D

If you're wondering why I needed a printer for this computer: well, first, it's cool, and second, the computer can record the programs to a tape without this device, but can't load them. I tried to build my own version of the cassette tape interface for it from scraps a couple of weeks ago, but it didn't work for some reason. Probably the signal was too quiet.

If you ever find yourself owning this little computer, here are some very useful resources:

Basic->WAV converter (comes with source codes):
https://www.peil-partner.de/ifhe.de/sharp/

DIY tape interface (you can't just load tapes from the device without it, only save): https://ht-deko.com/pokecom/bbce124.html

Printer emulator using Arduino: http://www.cavefischer.at/spc/html/CE-126P_Emulator.html#PC-1250A

Now that I have this wonder of portable personal computing in its final form, I need to think: what kind of computing I can do on a 4-bit BASIC computer (read: slow) with a super bad keyboard (read: worse than ZX81) and a screen of 16 characters (e.g. most output goes to a printer right away)? And the IO is limited to a tape and a printer.

There's enough RAM to run a simple text editor, but the keyboard is a pain, so I'd rather not. Simple spreadsheet app is feasible, but I might as well just use BASIC. A database app would require some clever sharding. It could work as an organiser for 100 notes/contacts, but this is better done by a sheet of paper hidden in the back cover of the computer.

What do I even do with you, o little computer?

It's obviously very useful for little programs like "enter your mortgage details and we'll print the payment schedule, taking compound interest into account" or "type in the colours of the stripes on your resistor and it'll print out the resistance". But what else?

I guess very few people bought such pocket computers / BASIC calculators to play video games, but I think it's going to be pretty good for all sorts of little games. I'm sure even a decent game of chess is very well achievable with 8K of RAM for BASIC.

Sadly, the device can't play music, and its serial port is a bit wonky, so even controlling MIDI through it might be a bit too much 🤔

Accessing BBSes is also out of the question; the screen is too tiny, and the serial port can't be used with the printer connected. Maybe it is possible to use a phone line to transmit programs/data over it as if its a tape recorder, but I doubt it'll work.

@nina_kali_nina So the cassette input is one channel audio, I presume? Or what kind of frequencies does it work at? I would imagine an analogue phone line would probably have no problems with the same frequency range. Why do you doubt it would work? Audio compression over a digital connection might corrupt the signal. But in principle I imagine it could work.
@steeph I have a cassette tape player that doesn't work with this computer because its earphone output is too quiet. Even when I use my laptop as the sound signal, I have to crank up the volume to the max or it doesn't work

@nina_kali_nina Hmm, would need an amplifier then.

One question is whether it's OK to use additional hardware to get another interface established. Because if that would be an option, a microcontroller that translates anything into whatever is required would be an option, too.

An amp would probably be below that threshold because it's not designed or programmed for the purpose of getting this device an additional way of communicating.

@steeph well, there's all sorts of interfaces made on Arduino, but at this point you might as well just use the Arduino but with a bigger keyboard and screen
@nina_kali_nina Pretty much what I thought. It's an interesting puzzle. Pretty tight constraints compared to 8 bit computers with parallel and serial ports.
@steeph it is designed to be a secondary computer for sure; it can sync with a PC and, from what I've heard, was used by all sorts of salespeople travelling around

@nina_kali_nina That makes sense.

Well. if it's meant to be used in combination with another computer, the other one might as well be an Arduino. LöL