6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sun Nov 24, 2024 12:07 am

All times are UTC




Post new topic Reply to topic  [ 21 posts ]  Go to page Previous  1, 2
Author Message
PostPosted: Fri Oct 04, 2013 8:21 am 
Offline

Joined: Wed Oct 02, 2013 10:46 pm
Posts: 7
I've thought this through a little more, and I'm thinking this might be possible, even with DIP chips.

If you take an ATmega328p you can program a ROM with the shift register method, you need four pins for the shift register, three for the /WE, /OE, and /CE, and 8 pins for the data bus. That's 15 pins just to write data to a 28C256 ROM.

Now, with LUFA, this AVR chip can emulate pretty much any USB device class. You could just make the ATmega a serial device, and write ROMs to the SBC one byte at a time. It would be slow, but it would work.

Since we already have a chip connected to the data bus serving a s USB serial device, why not replace the ACIA in an SBC with this new in-system ROM programmer? Really we're only looking at *maybe* 3-4K of Flash memory on the microcontroller (out of 32K), so it's very doable.

As for programming the ROM in situ, we could use the Bus Enable pin on a WDC 6502. This would work as long as the microcontroller does a soft reset after burning a ROM.

So, with a lot of code on a 28-pin microcontroller, you get rid of the MAX232 and 6850 by replacing it with a $2 ATmega and two 74595s. It's more parts, but lower component cost, and you get in-system ROM programming and a USB serial port out of the deal. That's a win anyway you look at it.

Someone please tell me I'm insane in thinking this is a reasonable project to undertake.


Last edited by bbenchoff on Fri Oct 04, 2013 4:51 pm, edited 1 time in total.

Top
 Profile  
Reply with quote  
PostPosted: Fri Oct 04, 2013 3:29 pm 
Offline

Joined: Thu Mar 03, 2011 5:56 pm
Posts: 284
TMorita wrote:
rwiker wrote:
...
Both these microcontrollers are available from mouser. They come with mask-programmed ROM that I am 99.99999% sure contain a monitor program.


I checked with WDC. Here's the reply.

Quote:
...


We should put these documents in the archive.

Toshi


Thanks for chasing up these documents! To me, at least, it looks like the 65C134 and 65C265 should be relatively easy to build a minimal SBC (you could even argue that it would be "optimized with a microcontroller :-))


Top
 Profile  
Reply with quote  
PostPosted: Sun Oct 06, 2013 4:31 pm 
Offline
Site Admin
User avatar

Joined: Fri Aug 30, 2002 1:08 am
Posts: 281
Location: Northern California
TMorita wrote:
We should put these documents in the archive.

Done.

_________________
- Mike Naberezny (mike@naberezny.com) http://6502.org


Top
 Profile  
Reply with quote  
PostPosted: Thu Oct 10, 2013 7:29 pm 
Offline

Joined: Sun Sep 15, 2002 10:42 pm
Posts: 214
bbenchoff wrote:
I've thought this through a little more, and I'm thinking this might be possible, even with DIP chips.

If you take an ATmega328p you can program a ROM with the shift register method, you need four pins for the shift register, three for the /WE, /OE, and /CE, and 8 pins for the data bus. That's 15 pins just to write data to a 28C256 ROM.

Now, with LUFA, this AVR chip can emulate pretty much any USB device class. You could just make the ATmega a serial device, and write ROMs to the SBC one byte at a time. It would be slow, but it would work.

Since we already have a chip connected to the data bus serving a s USB serial device, why not replace the ACIA in an SBC with this new in-system ROM programmer? Really we're only looking at *maybe* 3-4K of Flash memory on the microcontroller (out of 32K), so it's very doable.

As for programming the ROM in situ, we could use the Bus Enable pin on a WDC 6502. This would work as long as the microcontroller does a soft reset after burning a ROM.

So, with a lot of code on a 28-pin microcontroller, you get rid of the MAX232 and 6850 by replacing it with a $2 ATmega and two 74595s. It's more parts, but lower component cost, and you get in-system ROM programming and a USB serial port out of the deal. That's a win anyway you look at it.

Someone please tell me I'm insane in thinking this is a reasonable project to undertake.


It sounds like you haven't read the datasheet for a 7495. It's a four-bit shift register.

With two four-bit shift registers, you can generate eight bits of address. With eight bits of address, you can address only 256 bytes of a 28C256 EEPROM.
In order to address all of a 28C256, you need four 7495s.

Also, the 7495 outputs are not tristateable. The EEPROM programmer needs to stay off the bus when the system is running. Therefore, you need two 74LS245 or similar buffers.

Now you have an ATMega 328p, four 7495s, and two 74LS245s.

Total count: seven chips just for the EEPROM programmer.

Now add a 6502, EEPROM, RAM, address decoding, and some I/O.

Total count: twelve chips.

Toshi


Top
 Profile  
Reply with quote  
PostPosted: Thu Oct 10, 2013 7:35 pm 
Offline
User avatar

Joined: Tue Nov 16, 2010 8:00 am
Posts: 2353
Location: Gouda, The Netherlands
TMorita wrote:
It sounds like you haven't read the datasheet for a 7495. It's a four-bit shift register.

Not only did he not read the datasheet for the 7495, he's even using a 74595.


Top
 Profile  
Reply with quote  
PostPosted: Thu Oct 10, 2013 8:00 pm 
Offline
User avatar

Joined: Fri Dec 11, 2009 3:50 pm
Posts: 3367
Location: Ontario, Canada
http://www.fairchildsemi.com/ds/MM/MM74HC595.pdf

_________________
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 21 posts ]  Go to page Previous  1, 2

All times are UTC


Who is online

Users browsing this forum: Google [Bot] and 62 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: