3 ms·
I was actually all set to say that 6502s were now unobtainable, but it turns out that they're not --- in 40-pin DIP, no less. Assuming they haven't changed the
by david-given 11y ago
I was actually all set to say that 6502s were now unobtainable, but it turns out that they're not --- in 40-pin DIP, no less. Assuming they haven't changed the pinout it should just drop right in.
http://www.mouser.co.uk/ProductDetail/Western-Design-Center-WDC/W65C02S6TPG-14/?qs=sGAEpiMZZMvu0Nwh4cA1wSNu7hWmGrIdvYIw7nZ2DMI%3d http://www.mouser.co.uk/ProductDetail/Western-Design-Center-...
Mmm, 600nm process!
- geon 11y agoThe 6502 is relatively popular in some embedddd devices. The Tamagotchi used it: http://hackaday.com/2013/05/24/tamagotchi-rom-dump-and-reverse-engineering/ http://hackaday.com/2013/05/24/tamagotchi-rom-dump-and-rever...
- david-given 11y agoThe trouble with the old architectures like the 6502 and the Z80 is that they were designed before stack-frame languages like C became popular --- which means they don't have any stack-relative addressing modes, which means that accessing stack frames is horribly expensive. e.g. on the Z80 most compilers have to keep a copy of the stack pointer in an index register, so that they can address the stack; and even then the absence of 16-bit accesses means that you need eight bytes of code and like a billion cycles to read or write a single 16-bit value. (I do know that the Z80 variant in the Game Boy added a ld hl, (sp+offset) instruction, which helps; shame they didn't add a ld (sp+offset), hl instruction...) The 6502 is even worse; the stack's limited to 256 bytes and isn't relocatable, let alone addressable. The C compilers I've seen maintain their own stack pointer in zero page. They also generate code which at best is terrible and at worst makes you want to claw your own eyes out to make the pain stop. So: (a) I'm curious to know what they wrote the Tamagotchi firmware in --- raw machine code? Forth? C? Fortran? (Fortran's actually a good match for these architectures because all variables, including function parameters, are global --- no stack frames required.) (b) why was it cheaper to use a 6502 core rather than a more modern architecture --- PIC, AVR, MSP430? Licensing? An in-house team of 6502 experts?
- nickpsecurity 11y agoThat product was made in 1996. Up to then, quite a few gaming devices already used them. Commodore was going bankrupt but company taking over still sold tons of them. So, it was a decent chip, probably cheaper than usual, and might have hired game developers with prior experience in it. All speculation based on business details at the time. I'd also like to know if it was cheaper or there was a talent advantage in mid-90's.
- nickpsecurity 11y agoThere's actually a niche market for making pin-compatible replacements for obsolete parts. Mainly for embedded and military industries. For instance, my private research looking for ultra-reliable hardware found RCA 1802 to be a great option: https://en.wikipedia.org/wiki/RCA_1802 https://en.wikipedia.org/wiki/RCA_1802 Turns out, it's still around via Intersil with a very thorough datasheet: http://www.intersil.com/en/products/space-and-harsh-environment/harsh-environment/microprocessors-and-peripherals/CDP1802A.html?pn=CDP1802A http://www.intersil.com/en/products/space-and-harsh-environm... Another trend is emulating them cycle for cycle and bug for bug with virtualization on modern hardware. Great example is replacing legacy VAXen with NuVAX: http://logical-co.com/nuvax/ http://logical-co.com/nuvax/ So, there's possibilities for obsolete stuff to keep going. Just can't depend on that happening. Especially if it's a complex and modern SOC rather than simpler chips of the past.