Patrefans
beneater from patreon
beneater patreon

Adapting WozMon for the breadboard 6502

🕑 Added 2023-07-21 16:39:16 +0000 UTC
Adapting WozMon for the breadboard 6502

Comments

Rya31

I love that vid (and others of Ahoy) so much. It might be possible to make a slightly more limited SID chip(board) or have the cpu drive it directly like the Apple II. You'd basically have a DAC outputting square, sine, and noise waves...now I kinda want to make this...

Remco van Zuijlen

This is never taken off unlisted on Youtube. All okay? Also I cannot wait to see basic run on the breadboard 6502 computer.

Sam Halliday

I wonder if a very basic 8-bit tracker would be possible (should you go for an audio card at some point). Here's a brilliant video about the history of 16 bit trackers that I was mesmerized by: https://www.youtube.com/watch?v=roBkg-iPrbw

Matt

Sound card would be awesome! I've experimented with the AY3-8910, but It would be great to see how you approach it. Thanks for the videos as usual.

NormalLuser

I second a soundcard! Something with 3 square wave and one noise channel would be enough for lots of fun stuff and could be done with a 555 and some counters and serial to parellel latches. With vga and now serial the Ben Eater breadboard computer is almost feature complete. Though another direction would be either a MIDI port or using something like a VLSI VS1053B.. But I like the idea of a Breadboard synthesizer for my 6502.

Jim Kelly

How about a sound card video like George Foote did here…. https://youtu.be/iFAMWvIqvng

Michael McDonnell

i wonder if a implement of cc65 will work, and not using libstdc but using assembly to create the system calls and then creating functions that called those assembly calls. i did something similar with the Commander X16 a while back. i used global variables to do the calls because i could not get stack calls to work correctly.

RTFMDude

Yeah, I was wondering if that was an optimization.

Yann Vernier

It wouldn't surprise me if b7=1 was hardwired just to make WozMon's modes take smaller code. It's used directly for SETMODE. ASCII only used the low 7 bits anyhow, and the Apple 1 only uses 67 codes or so (64 glyphs, CR, BS and ESC). If you want to rewire it, it's pin 15 in the keyboard connector; the schematic notes it should be tied high "for normal operation with supplied software", which is WozMon.

Yann Vernier

I think Forth is a good language for learning compiler and interpreter structure. It's hardly the only way such things could be built, but it has very distinct and straight forward pieces. A few of them are present in WozMon; ECHO is like EMIT, NEXTCHAR is like KEY, $200 is the input buffer, PRHEX resembles . and the hex input is also the default in Forth.

Adrian Cochrane

Fascinating video! Regarding your next video, I would be interested in seeing sort of compiler or interpreter. I don't know BASIC, but I do know how much of a rabbithole this topic can be! Something else I'd be interested in seeing: Floating point arithmetic!

bencodestx

One nitpick… around 14:30 when referring to the dot, you mention 01 when I believe you intended 10. Nice video.

sorek.uk

It would be very interesting to see setup for compiler for this computer so we could write programs in C for it.

Euro Micelli

Technically that wasn’t WozMon’s doing; the extra bit came from the design of the keyboard interface. So, don’t blame Wozniak but (checks notes)… oh, right…

ast_rsk

I love this side quest, I've learned so much, thank you!

Don Prefontaine

Great work once again - thanks!

RTFMDude

Why do you think Wozmon didn't follow the ASCII standard to begin with? It was published in 1963. I know that character encodings is a huge mess--even with ASCII--due to the unused higher-order byte that everyone in the world just took as an open invitation to invent their own character sets. Do you see, or is there any reasoning mentioned, why Woz would make a custom character set?

Michael Doornbos

I was hoping you were going to continue with WozMon this month. I left my KIM-1 out to follow along. Awesome video as usual Sir!

Michael Cartwright

I made one more change: in the NEXTCHAR section just before JSR ECHO, I check to see if the key is escape and avoid echoing $1B (since it emits a bad character to PuTTY that disrupts my console). So, replace: STA IN,Y ; Add to text buffer. JSR ECHO ; Display character. With: STA IN,Y ; Add to text buffer. CMP #$1B ; don't echo the $1B BEQ NOTCR JSR ECHO ; Display character. I know this messes with trying to keep the size the same as the original but I didn't have that problem since my IO is mapped to the zero page (1 byte addresses for IO, not 2). There's probably a smarter way to fix this (like swapping the $1B for the "\" and not emitting the extra "\"). My take on this exercise, where I simulate the ACIA using an Arduino Uno, can be found here: https://www.hackster.io/michael-cartwright/6502-console-interface-using-arduino-uno-to-run-wozmon-ee9990


More Creators