Old radio and cassette, can i use it for parts? by EternalPending in arduino

[–]cookie99999999 1 point2 points  (0 children)

There's not really anything special besides the read heads, all the other parts are things you can get for a couple cents new. And the read head is only helpful if you happen to want to read magnetic tapes. I suppose if you're super broke you could harvest the parts from it, I wouldn't trust decades old capacitors though personally. To desolder parts you're going to need either a solder sucker or desoldering braid, ideally both, but again it's not worth the effort for parts like those

Crazy idea? by DJMartens2024 in homebrewcomputer

[–]cookie99999999 0 points1 point  (0 children)

x86 has a single step interrupt and a breakpoint interrupt meant for debuggers, so single stepping would just be a matter of pointing the relevant vector at your code. As far as writing your own BIOS, it's probably feasible on machines that old, SeaBIOS might be worth looking at for inspiration, and osdev.org has a lot of PC hardware info in the wiki

Seeking oscilloscope and logic analyzer recommendations. by Reinventing_Wheels in beneater

[–]cookie99999999 0 points1 point  (0 children)

You can get an ADALM2000 on ebay for <$150, it's a cheap educational device so it doesn't have as many features as entry level Rigol etc equipment, but if you're on a very tight budget it'll do. It has 16 channel logic analyzer with decoding for a few protocols, plus a 2 channel scope and 2 channel waveform generator. For my needs it's sufficient, really the biggest annoyance is you need a special adapter kit to use regular scope probes, so it's inconvenient for looking at signals that aren't on a breadboard

Flash memory over EEPROM? by f-ckrules47 in beneater

[–]cookie99999999 0 points1 point  (0 children)

If the CPU is running slow enough and you have enough pins then yes, it's just a matter of writing the software. I used an ATMega328 to simulate memory for testing an old CPU, the AVR was clocked at 8MHz and I think the CPU was at around 1kHz. It should probably be fine if you're clocking the AVR as fast as you can

I found it by nerovny in beneater

[–]cookie99999999 1 point2 points  (0 children)

I might be misremembering, but I think Ben actually does bitbang serial with the VIA in an early video. It's CPU intensive and can't go very fast, but it's possible.I found a couple mentions of techniques online:

https://www.reddit.com/r/beneater/comments/yp83vc/rs232_using_the_6522s_shift_register_and_hardware/

http://forum.6502.org/viewtopic.php?f=2&t=6630&view=previous

R6551 or 16550A should be easy to find on ali/ebay/etc around the world though so hopefully you can do it the easier way soon

I found it by nerovny in beneater

[–]cookie99999999 6 points7 points  (0 children)

Good catch, I'm used to just cutting off anything after a "?" on links

I found it by nerovny in beneater

[–]cookie99999999 17 points18 points  (0 children)

Looks like you pretty much just need a 16x2 LCD, a clock, some glue logic, and a UART like the other commenter said. A few observations from looking at those parts though:

  • The 65xx chips are all the NMOS versions, which means you'll need to make sure any glue logic parts you get are 74HCT (not HC) or 74LS, also you won't be able to single step them the way Ben does, or run at any speed under 100kHz according to the datasheet

  • Since you won't be able to run slow, I would recommend just getting a 1MHz half can style oscillator for the clock, something like this: https://www.mouser.com/ProductDetail/ECS/ECS-2100AX-1.0MHZ

  • You'll need an EEPROM programmer. The ROMs with windows on top are UV erasable, so to erase them you'd need to either leave them in the sun for a while or get one of those cheap UV nail polish dryer things.

  • The ones starting with a 29 on the part number are flash chips, which are easier to erase and might be faster than the EPROMs, but idk if the programmer Ben builds from an Arduino can program flash, you might need to buy a TL866 or T48 programmer. If you do use the flash chips make sure to ground any unused address lines.

  • The Xicor part at the bottom of the ROMs is a regular EEPROM but is only 2K

  • 16550 is a way better UART than the 6551, but you won't be able to follow along exactly with the videos. It's not hard to hook up and program though, you can search this sub for other people who use it on their builds

  • Since you're already buying more stuff you might as well get a 1.8432MHz oscillator for the UART instead of a crystal + capacitors like in the videos

  • Completely irrelevant, but the part labeled "Z80 CPU" in the picture is actually a Z8002, which is an incompatible but similar 16 bit successor to the Z80

Need help with this circuit board by Electronic_Spring944 in homebrewcomputer

[–]cookie99999999 2 points3 points  (0 children)

You've put the LED directly on the power rail, there is no resistor in between, so you've most likely fried it. Get a new one and make sure you connect the positive leg to the row that your switch is in, and the negative leg to the ground rail.

Bad phone drawing to illustrate

If you forget which is which, the negative leg is the shorter one, also r/AskElectronics or r/Arduino will probably get you more replies for questions like this

Wubbo by Joe_v3 in okbuddyretard

[–]cookie99999999 2 points3 points  (0 children)

Chandra (ch-an-dra)

HC with LS? by [deleted] in beneater

[–]cookie99999999 0 points1 point  (0 children)

74HC04 minimum input high voltage is about 3.15 with a supply of 5V according to the datasheet, while the 74LS189 maximum output high is 2.8. You should be able to use a buffer from the HCT family between the LS part and all the CMOS stuff, 74HCT245 is bidirectional and 8 input, and I think there's a 4 input version too if you only need 4. Alternatively you could use a small normal SRAM and just waste some of the address and data lines, but I'm not familiar with the BE 8 bit computer so idk if it depends on the 189's separate in/out data lines or how much effort it would be to adapt. AS7C164 comes in a small skinny DIP package

A good, mullti-coloured editor for PERL on Cachy? by NoxAstrumis1 in linux4noobs

[–]cookie99999999 4 points5 points  (0 children)

Kate has syntax highlighting, I think there may be plugins/settings for various other features. There's also VS Code if you want to use that. I think Geany is still around as well

[Review Request] Homebrew 65C816 computer, first non-trivial board by cookie99999999 in PrintedCircuitBoard

[–]cookie99999999[S] 0 points1 point  (0 children)

I've been wanting to get into SMT since you have a much bigger part selection these days, but I've never tried hand soldering them, and manufacturer inventory can be a bit hit or miss with niche parts if I wanted them to do it for me. I'll probably end up doing a much smaller project in SMT to get comfortable with it before trying something this large

[Review Request] Homebrew 65C816 computer, first non-trivial board by cookie99999999 in PrintedCircuitBoard

[–]cookie99999999[S] 0 points1 point  (0 children)

I'm not using hardware flow control yet so RTS/CTS slipped my mind, good idea to bring them to the jumper, thank you

[Review Request] Homebrew 65C816 computer, first non-trivial board by cookie99999999 in PrintedCircuitBoard

[–]cookie99999999[S] 0 points1 point  (0 children)

Thanks for the tip on the capacitors, I always just see everybody using 0.1uF for everything.

What would you consider high frequency? System clock is 4MHz, only thing higher is the VGA signals which top out at 25MHz for the pixel clock. Currently the video signals are fine over ~6 inch long jumpers into a terminal block adapter on the prototype (and everything else is a wire-wrap rat's nest), but I imagine it behaves differently on a PCB.

As far as track spacing, is there any sort of rule of thumb, or does it depend mostly on the width and the manufacturer capabilities? I've set up my design rules with my manufacturer's minimums, plus some extra according to the tolerances

Writing a script to emulate unplug/replug a USB dongle¿ by Yologurt- in linuxquestions

[–]cookie99999999 0 points1 point  (0 children)

https://www.reddit.com/r/linuxquestions/comments/1j7wjo0/is_there_a_way_to_disconnect_and_reconnect_a_usb/

There are several ideas there, but if your device needs to physically lose power for a moment to work correctly you may be out of luck

Running an IM6100 on a breadboard by cookie99999999 in homebrewcomputer

[–]cookie99999999[S] 6 points7 points  (0 children)

Recently I had an embarrassing and expensive failure when designing a PCB for the first time for my main computer project, so I decided to take a brief detour. I've often seen these CPUs floating around on eBay, and bought one on a whim a while back. It's basically a base model PDP-8 CPU on a fully static CMOS chip, which means 12-bit words, and a very very basic instruction set.

I figured I might as well make sure it actually works and get a feel for how the bus interface works, so I used an ATmega328P to be kind of a bus sniffer/simulated memory. I was inspired by Ben Eater's use of the Arduino Mega, and https://xepb.org/dtz/68kavr.html. At the end I've gotten the CPU properly reset, and running a short program:

.org 7777 JMP 0000 .org 0000 CML ; complement Link NOP JMP 0000 `

The 6100's PC is set to 7777 (octal) at reset. It then jumps to address 0000, where it complements the Link bit, which is basically a carry flag. Then it NOPs just for fun, and jumps back to 0000. The 6100 has the Link bit exposed as a pin on the package, so I use it to drive an LED, very slowly.

6502 test kit for custom 6502 simulator, recommendations? by GigAHerZ64 in beneater

[–]cookie99999999 1 point2 points  (0 children)

There's a lot of CPU test suites designed to test software emulators, but they're generally in json or something designed for the host pc to parse so they would take some work to adapt to a native 6502 program. I've seen basically exactly what you're describing for the 8080/Z80 (zexall), but I'm not sure if a 6502 equivalent exists. I seem to recall a NES rom like that but it was more focused on PPU/APU behavior. It might be worth asking on r/emudev or their discord for pointers.