Comments (6)
not a real home computer of the '80s, there is this DIY project called LM80C which uses the SIO to read from the host PC.
I have written an JavaScript emulator for it (find it here) but it lacks a proper SIO. And since I'm planning to switch using your chips I was wondering about the SIO. BTW the LM80C also uses Z80 CTC and PIO which you already have covered
I'll look into MAME if I there is an implementation to start with.
BTW, I have your Z80 cpu working in a experimental branch, curiously it's a lot slower than the JavaScript one because it has to go back and forth from WASM to JS on every memory read or I/O. But of course I expect it to be faster when everything will be coded in C.
from chips.
I know someone who had a NorthStar CPM machine at home in the late 70s. That has an SIO option. http://www.s100computers.com/Hardware%20Index%20Page.htm With the SIO, you can go on to integrate them into the KIO and the Z84C or Z180.
The Camputers Lynx has some serial not sure what https://en.wikipedia.org/wiki/Camputers_Lynx or the https://en.wikipedia.org/wiki/Enterprise_(computer)
from chips.
Only if it's an integral component of an emulated home computer (because otherwise it's hard to test whether the emulation is somewhat correct), I just looked around a bit, and the only use I've found is as the East German clone UB8563 in this serial I/O module:
http://www.mpm-kc85.de/html/m003_v24.htm
Do you know of a computer which has a Z80 SIO integrated?
from chips.
curiously it's a lot slower than the JavaScript one because it has to go back and forth from WASM to JS on every memory read or I/O
Yes, that's totally expected. Switching between WASM and JS that often isn't a good idea. Even though calling between WASM and JS got a lot faster over time, it's still not that fast :)
For a mixed WASM/JS emulator I think it's best to expose a higher-level function to JS which runs the entire emulated system for one host system frame and only returns to Javascript for "rendering" display and audio and receiving input (or do all of this also within WASM, and only expose something like a "scripting interface" to JS, like starting and stopping the emulation, loading a data file into the emulation, etc....
from chips.
@nippur72 I really like your JS emulators btw, impressive stuff :)
from chips.
Impressive work on this, especially the portability. I don't see the SIO much in "home computer" stuff but it comes up often in "vintage" or single-board computer creations, particularly new efforts (Z80 MBC, MembershipCard, RetroBrew Computers, etc.). It's also sometimes paired with the CTC (which is already emulated), with the CTC functioning as a baud rate generator.
I'm hoping to use the CTC in an emulation of a Standard-BUS data acquisition system I have, but having the SIO would be a nice add eventually.
from chips.
Related Issues (20)
- [vic20] [6522] cassette SENSE pin not working HOT 1
- Reminder: potential bug in m6502 for NMI detection HOT 3
- Known Issues: CPC
- Are you interested in 8086? HOT 2
- Z80 Chip doesn't handle LD A,(IX+n) correctly HOT 4
- Z80 BUSACK/BUSREQ/RESET pins HOT 2
- z80: fetch opcode timing HOT 1
- surprising behaviour of cycle-stepped z80 after PC reset HOT 2
- Z80 wait state handling incorrect? HOT 1
- m6502 doesn't clear D on BRK HOT 1
- Q: page-cross behaviour on 6502 SHY opcode HOT 3
- Unable to use the space bar when there's a CPC_JOYSTICK_DIGITAL attached HOT 2
- Cycle-stepped Motorola 68K HOT 2
- m6569: c accesses half a cycle too late? HOT 2
- Caps Shift doesn't work on ZX Spectrum
- Z80: having _wait() before _mwrite(addr, data) looks incorrect. HOT 3
- Z80 XOR Malfunction HOT 12
- Glitch after snapshot save and load HOT 1
- CPC: Implement Version 3 Snapshots
- [c1541] State of 1541 emulation? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from chips.