VOGONS


MartyPC

Topic actions

Reply 620 of 627, by GloriousCow

User metadata
Rank Oldbie
Rank
Oldbie
superfury wrote on 2026-08-20, 20:31:

Cycle-accurate Adlib too (at real 49kHz, like with my emulator)? Last I checked nuked wasn't?

I don't know and frankly I don't really care. It works and sounds okay.

MartyPC: A cycle-accurate IBM PC/XT emulator | web version: https://martypc.net | https://github.com/dbalsom/martypc

Reply 621 of 627, by GloriousCow

User metadata
Rank Oldbie
Rank
Oldbie

Working on cassette interface emulation. I'm not sure that anyone was exactly clamoring for this, but it checks the last box for complete IBM 5150 emulation.

It's got a fun pixel-art tape visualization with accurate tape spindle simulation.

The attachment martypc_cassette_01.png is no longer available

MartyPC: A cycle-accurate IBM PC/XT emulator | web version: https://martypc.net | https://github.com/dbalsom/martypc

Reply 622 of 627, by superfury

User metadata
Rank l33t++
Rank
l33t++
GloriousCow wrote on 2026-08-27, 20:09:

Working on cassette interface emulation. I'm not sure that anyone was exactly clamoring for this, but it checks the last box for complete IBM 5150 emulation.

It's got a fun pixel-art tape visualization with accurate tape spindle simulation.

The attachment martypc_cassette_01.png is no longer available

Isn't tape just controlled just like a floppy, using the FDC?

Edit: https://theretroweb.com/expansioncards/s/ibm- … oppy-controller

Last edited by superfury on 2026-08-28, 14:08. Edited 1 time in total.

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 623 of 627, by BinaryDemon

User metadata
Rank Oldbie
Rank
Oldbie

Thats interesting, one of the distinctions I always draw in my mind between x86 machines and other early computers is the transition from cassette storage to floppy drive storage but I guess there were exceptions.

Reply 624 of 627, by GloriousCow

User metadata
Rank Oldbie
Rank
Oldbie
superfury wrote on Yesterday, 06:16:

Isn't tape just controlled just like a floppy, using the FDC?

Edit: https://theretroweb.com/expansioncards/s/ibm- … oppy-controller

Different tape systems.

The original IBM 5150 had an cassette interface port right next to the keyboard port with an identical DIN connector. The PCjr had its weird berg strip and they sold you a cassette adapter cable.
The cassettes used were ordinary audio cassettes. The cassette interface worked with decks that had motor control inputs, and were compatible with the decks for other 8-bit home systems. I use a tape deck originally for the TRS-80.

BinaryDemon wrote on Yesterday, 10:37:

Thats interesting, one of the distinctions I always draw in my mind between x86 machines and other early computers is the transition from cassette storage to floppy drive storage but I guess there were exceptions.

You're not entirely wrong. The IBM PC tape interface was dead on arrival - the only two software titles known to exist for it are two versions of IBM Diagnostics. There is some indication IBM Typing Tutor was released on cassette but nobody has seen an actual cassette of it. There was no real use for the tape drive other than saving your ROM BASIC programs.

MartyPC: A cycle-accurate IBM PC/XT emulator | web version: https://martypc.net | https://github.com/dbalsom/martypc

Reply 625 of 627, by keenmaster486

User metadata
Rank l33t
Rank
l33t

I have a Sony TC-100 (https://www.thevintageknob.org/sony-TC-100.html) and have successfully used it to store and retrieve BASIC programs with my IBM 5150.

World's foremost 486 enjoyer.

Reply 626 of 627, by DaveDDS

User metadata
Rank Oldbie
Rank
Oldbie

Always interesting doing a cassette tape emulation.

If you really want to get down in the mud, you could encode and decode audio streams via a sound interface - a whole lot of work for something few people will care that much about.

If you're "lucky" the tape interface will present as some sort of digital data at the software end.

The only tape interface I actually implemented was for my H8 emulator of the Heathkit H8 system.

Fortunately the H8-5 card (Serial/Cassette tape interface) just had tone generators and decoders on it so that the software just sees a serial data stream.

Implementing this in the emulator was pretty easy - just redirect reads/writes to the serial tape interface to a file.

I provided many of the common "tapes" that had been available from Heath as .H8T files, which you could mount and read the same way you would have read a physical tape on the H8.
Writing to tape was also supported to make/write a .H8T file.

This works well for "recreating the experience" but I never implemented actual encoding/decoding to/from audio to make it work with actual physical tapes.

https://dunfield.themindfactory.com ; "Daves Old Computers" ; SW dev addict best known:
ImageDisk: rd/wr ANY floppy PChw can ; Micro-C: compiler for DOS+ManySmallCPU ; DDLINK: simple/small filetransfer(w/o netSW)via Lan/Lpt/Com

Reply 627 of 627, by GloriousCow

User metadata
Rank Oldbie
Rank
Oldbie
DaveDDS wrote on Yesterday, 19:00:

Always interesting doing a cassette tape emulation.

If you really want to get down in the mud, you could encode and decode audio streams via a sound interface - a whole lot of work for something few people will care that much about.

Should be fairly straightforward to pull audio from a recording input, although i might have to have some kind of control to adjust the volume. But as you said, there's already not a ton of interest in this as a feature and if you have a cassette deck hooked to a computer you can already just record a WAV with something. Hooking up the UI bits for selecting audio inputs and polishing that is already more than i care to do

MartyPC: A cycle-accurate IBM PC/XT emulator | web version: https://martypc.net | https://github.com/dbalsom/martypc