6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Fri Nov 22, 2024 10:27 pm

All times are UTC




Post new topic Reply to topic  [ 25 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Mon Apr 14, 2003 12:07 pm 
Offline

Joined: Tue Mar 18, 2003 12:21 am
Posts: 36
Location: ChristChurch New Zealand
****************************************************************************
IF you are reading this and would like to add feedback to the modem topics! Garth Wilson has created a new thread regarding those topics!!
*****************************************************************************

:lol:
Ok my biggest issues - well almost my ownly issue is the form of rom that I'm going to use!

** I was thinking e2prom since you dont need ultra violet to reprgramme but I'm not sure hmmm.

there is a eprom programmer "dicksmith" is selling now for $112 new zealand dollars as a professional kit - does this sound reasonable, programmes nearly all eproms and nicely controlled in software.

What are some of you guys using as roms? + programmers?

I dont want to concentrate too much on the programmer (rom side of things).

_________________
NPastoll


Last edited by 1202 on Sat Apr 26, 2003 8:56 am, edited 2 times in total.

Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Apr 14, 2003 8:40 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8544
Location: Southern California
I use the Needham's Electronics PB-10 which plugs into a slot in the PC and has a ribbon cable coming out to the ZIF socket outside the PC's case. I think it might have cost $129 US, but they're not making that particular model anymore so if you find one, it'll be one that has been sitting on someone's shelf for a while.

I believe the A.R.T. programmer sold by Jameco ( http://www.jameco.com catalog number 82384) for $200 US is rather popular. I'm not aware of any less-expensive commercially available EPROM programmer.

The hardware portion of making your own would be much cheaper, but the software portion could be a major challenge if you're new to this stuff. Some EPROM manufacturers are not very anxious to release information on how to program the parts either. I suppose you could take an algorithm that works for most, like the 3x1ms algorithm, and hope it works for the EPROM you have. Chances are good that it will. It may not be as fast as other algorithms, but it's fine for hobbyists and sure goes faster than the old 50ms-per-byte method, which I understand will damage some newer EPROMs. Some brands can use the quick-pulse algorithm my Needham's offers, and then an 8Kx8 EPROM is done just about as quickly as you can get it in and out of the socket. It's nice for production, and there's no need for a gang programmer that way.

As for UV erasers: Walling Company has one for about $50 US that will do four at once in about 15 minutes. They say it's only3 or 4 minutes, but my EPROMs are still perfectly readable after twice that long. When I was new to all this in the early 80's, I tried putting EPROMs out in the sun. They took over a week to erase!

Garth

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
 Post subject: Gee from what I see!
PostPosted: Tue Apr 15, 2003 1:06 am 
Offline

Joined: Tue Mar 18, 2003 12:21 am
Posts: 36
Location: ChristChurch New Zealand
Gee's I think for someone starting out I think I might have a good deal money wise:-

Looking at the costs of those professionally sold programmers I think I will think about buying this eprom programmer kit for $112 nz dollars.

means I dont need to buy a pro one and I get the experience of building a programer professionally - if it lives up to its name, which I'm finding out about!

thanx for the replies

:roll: :wink:

_________________
NPastoll


Top
 Profile  
Reply with quote  
 Post subject: Device Programmers
PostPosted: Wed Apr 16, 2003 2:37 am 
Offline
Site Admin
User avatar

Joined: Fri Aug 30, 2002 1:08 am
Posts: 281
Location: Northern California
GARTHWILSON wrote:
I use the Needham's Electronics PB-10 which plugs into a slot in the PC and has a ribbon cable coming out to the ZIF socket outside the PC's case. I think it might have cost $129 US, but they're not making that particular model anymore so if you find one, it'll be one that has been sitting on someone's shelf for awhile.


Hi Garth,

I have a Needham's programmer as well, the EMP-11. This version plugs into the parallel port of the PC. In addition to all major types and sizes of EPROMs, it also does Flash, PAL/GALs, and PIC microcontrollers. It was expensive, but like anything else- you get what you pay for. I've used various Needham's programmers at work over the years and I have been very satisfied with them.

eBay is a good place to find cheap device programmers.

Regards,
Mike

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


Top
 Profile  
Reply with quote  
 Post subject: How about flash ROMs?
PostPosted: Sun Apr 20, 2003 6:37 pm 
Offline

Joined: Sat Jan 04, 2003 10:03 pm
Posts: 1706
Do these commercial programmers also support flash ROMs as well? I imagine it would be very inconvenient to have to program, reprogram, and reprogram again EPROMs in the course of debugging the software.

I suppose that one could use an emulation of your circuit now-a-days (even if you have to write it yourself). However, while I was working for Hifn, sometimes we'd have code that works fine in our MIPS emulator, but which crashed in the real circuit. Fortunately, we had flash ROMs to work with.

--
Samuel A. Falvo II


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Apr 20, 2003 8:33 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8544
Location: Southern California
If you can spend a couple grand on a device programmer, you get essentially a D/A on every pin, in order to accomodate the various operating and programming voltages. Fortunately more and more things like CPLDs are programmed with serial interfaces which not only simplifies the programmer requirements, but allows you to solder the device into the circut before it's even programmed, and program it just before shipping, or even update after the product has been in the field for awhile.

More related to hobbyist programming however— EEPROMs can be erased by the programmer so you don't have to put them in a UV eraser for 15 minutes. But when I'm working with parts that have to be EEPROM-based, I have several of them cycling at once, such that every time I'm ready to try a new fix or addition to the software during the development, another part is ready to come out of the eraser while the other three still need more time. Then I put the last-tried one into the eraser. That way the eraser doesn't really keep me waiting.

For a lot of uses, you can of course just get your ROM code up to where you can do the rest of the development in RAM, just feeding it over an RS-232 link from the PC. That way you can try and re-try without doing another EPROM until you're satisfied with the code and decide it's ready to put into ROM.

ROM emulators have been around for decades too. One brand name that comes to mind from seeing the ads many times is PROMice (ICE standing for in-circuit emulator). Most hobbyists on this forum will need at least an inexpensive EPROM programmer which doesn't have to cost over $200. If you can spend another couple hundred, you could get the EPROM emulator as well. The PROMice may cost more since I believe it does quite a bit more than just PROM emulation, like trace and other functions. You might check with Grammar Engine at http://www.gei.com .

Garth

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Apr 20, 2003 11:58 pm 
Offline

Joined: Sat Jan 04, 2003 10:03 pm
Posts: 1706
GARTHWILSON wrote:
Fortunately more and more things like CPLDs are programmed with serial interfaces which not only simplifies the programmer requirements, but allows you to solder the device into the circut before it's even programmed, and program it just before shipping, or even update after the product has been in the field for awhile.


Eventually, something, somewhere, is going to be needing a ROM. EEPROMs apparently are currently the most popular method of talking to CPLDs and FPGAs, for precisely the reasons you state.

However, I am looking more for the boot-time code storage.

Quote:
For a lot of uses, you can of course just get your ROM code up to where you can do the rest of the development in RAM, just feeding it over an RS-232 link from the PC. That way you can try and re-try without doing another EPROM until you're satisfied with the code and decide it's ready to put into ROM.


It sounds nonsensical, but I've experienced this first hand. It can take pretty significant effort to get even this kind of minimal bootstrap code working in an embedded circuit, especially when dealing with those uber-configurable UARTs that can handle everything from RS-232A to 100-base-T Ethernet (like some of the 68xxx-series microcontroller UARTs can). Of course, this isn't likely to happen with a 65xxx-type system, especially if you just stick with 6551 UARTs. Remember also that the data transfer protocol will also need to be verified as well.

What's funny is that my roommate laughingly suggested that I use a paper-tape solution to boot-strap the computer with. I actually like the idea -- on the one hand, it does complicate the circuit a tiny bit, as I need to make a paper tape reader, but on the other hand, it sounds so anachronistic that it is probably the coolest thing most people will ever see. But there's no argument -- I won't have any need at all for ROM in such a system. :P

Quote:
ROM emulators have been around for decades too.


I wasn't talking about a ROM emulator. I was talking about a hardware emulator (e.g., VICE under Linux will emulate a Commodore 64, 128, VIC-20, PET, etc. to an *AMAZING* level of detail. It even emulates the bugs and gotchas in the VIC-II chips that enables those weird video modes/effects!) -- a software model of your whole system, including the CPU, and its baseline set of peripherals.

--
Samuel A. Falvo II


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Apr 21, 2003 6:54 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8544
Location: Southern California
> Eventually, something, somewhere, is going to be needing a ROM.
> EEPROMs apparently are currently the most popular method of talking
> to CPLDs and FPGAs, for precisely the reasons you state.
>
> However, I am looking more for the boot-time code storage.

Right. That's what I'm talking about— programming the boot-up code in the (E)EPROM.

> It can take pretty significant effort to get even this kind of minimal
> bootstrap code working in an embedded circuit, especially when
> dealing... <snip> Remember also that the data transfer protocol will
> also need to be verified as well.

...and this can be done with just an assembler and EPROM programmer. Sure, progress is slowest before you have even a monitor program working, but I've done this kind of thing many times. Understanding the data sheets and taking extra care in your program-writing is probably more important at this beginning stage when you're essentially programming "blind" than it is at later stages where you can get some interactiveness. My tip #36 is one that deals with using simple I/O things like a piezoelectric beeper or an LED to do the really rudimentary debugging before you have much of anything at all working on your new hardware creation. One or two other tips deal with using a low-end oscilloscope as a debugging tool, which could be especially useful in getting a serial line going. And when the poor newbie is totally stumped on a problem, he can always come ask his questions here on the forum.

> suggested that I use a paper-tape solution to boot-strap the computer with.

What might appeal to me here is the possible longevity. You wouldn't have to worry about EPROMs self-erasing in 15 years, or damaging the surface of a floppy disc, or magnetic fields, or anything like that. If the paper is of high enough quality that it will last your lifetime, and the reader doesn't have rubber belts and rollers that will have deteriorated when you pull it out of the closet 20 years down the road, there might be some appeal. After any given project is done, I copy the software and documentation to floppy for protection in the unlikely event of both hard discs in the computer going down or the computer getting stolen. But my real insurance is a paper printout, which as a last resort (re-typing!), may be more dependable than the magnetic media.

I was a little late getting into the Club of Hewlett-Packard Hand-held Computer Users (CHHU) in the 80's since Richard Nelson was no longer able to keep it going on a shoestring and had to get a real job; but I understand one cool thing about sharing software at club meetings where the users had bar-code readers was that you could just put the code in the photocopier and hand out the copies. Everyone could then scan it in, and just file the permanent copy along with other papers. Granted, bar code is definitely not a dense storage form, and scanning it with the wand probably goes about as fast as a 300 baud modem; but it sure beats punching it in by hand!

Garth

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Apr 21, 2003 6:00 pm 
Offline

Joined: Sat Jan 04, 2003 10:03 pm
Posts: 1706
GARTHWILSON wrote:
>What might appeal to me here is the possible longevity. You wouldn't have to worry about EPROMs self-erasing in 15 years, or damaging the surface of a floppy disc, or magnetic fields, or anything like that. If the paper is of high enough quality that it will last your lifetime, and the reader doesn't have rubber belts and rollers that will have deteriorated when you pull it out of the closet 20 years down the road, there might be some appeal.


STOP IT! You're lending credibility to the technique! :)

In all seriousness, though, it should be rather easy to do. I envision a system where I have 8 rows corresponding to the eight data bus pins, and two command rows that basically provides the self-clocking necessary to load the software with.

Because two bits are reserved for the command, the commands would read similar to this:

00 - No operation -- the default command when no paper is loaded as well.
01 - Load address low register
10 - Load address high register
11 - Store data to current location; increment address register

Tapes are created by printing onto 8.5"x11" paper sheets using any black-ink printer, and each page is cut into strips, which are then spliced by hand. Because there are no holes punched, there is no paper waste. The presence or absence of ink is detected using LEDs and photodiodes.

Each "tape transaction" consists of setting up the datum first, issuing the command, then releasing the command before moving to the next datum. In binary, it would look like this (storing the characters 'A' and 'b', starting at the current address location):

Code:
0001000001  ; set up
1101000001  ; store
0001000001  ; release
0001100010  ; set up
1101100010  ; store
0001100010  ; release
...etc...


Top
 Profile  
Reply with quote  
 Post subject: Sounds interesting!
PostPosted: Tue Apr 22, 2003 2:36 am 
Offline

Joined: Tue Mar 18, 2003 12:21 am
Posts: 36
Location: ChristChurch New Zealand
yeah more like a barcode version of punch carding!

sounds very interesting actually and quite straight forward in simple terms, you'd be creating a hell of a design wouldn't you?! for those tape motors and sensors, Hehe and what about the controller card!

_________________
NPastoll


Top
 Profile  
Reply with quote  
 Post subject: Re: Sounds interesting!
PostPosted: Tue Apr 22, 2003 4:32 am 
Offline

Joined: Sat Jan 04, 2003 10:03 pm
Posts: 1706
1202 wrote:
yeah more like a barcode version of punch carding!

sounds very interesting actually and quite straight forward in simple terms, you'd be creating a hell of a design wouldn't you?! for those tape motors and sensors, Hehe and what about the controller card!


My design lacks tape motors -- the tape is drawn through by hand. That's why I have the command bits set up the way I do. Lack of motors means vastly simplified hardware, and a minimal Forth interpretter would probably fit on a reasonably sized strip of tape. It's not like I'm filling all of 16MB of memory with code. :-)

As far as the "controller card" is concerned, it'd be a simple bus master. A toggle switch on the front panel of the machine would probably disable the CPU, so there isn't even the overhead of DMA. Simple, sweet, and to the point. Minimum complexity.

But, of course, I'll probably end up spending more on this than a simple, home-brew EPROM programmer and commercial EPROM eraser combined. :) Or I can make my own EPROM emulators by using a 62256 or 6264 SRAM chip backed by its own battery, and programmed off the PC via the parallel port. To be honest, this sounds like the best way to go.

--
Samuel A. Falvo II


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Apr 22, 2003 4:41 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 9:02 pm
Posts: 1748
Location: Sacramento, CA
kc5tja wrote:
Tapes are created by printing onto 8.5"x11" paper sheets using any black-ink printer, and each page is cut into strips, which are then spliced by hand. Because there are no holes punched, there is no paper waste. The presence or absence of ink is detected using LEDs and photodiodes.


Why not keep the paper whole? I've seen plans for a poor-man's scanner built from an old dot matrix printer. You simply attach the IR LED/Receiver to the print head via a flexible cable, and let the printer do all the mechanical work for you. It also can print (save) or scan (load). To load, just send a series of spaces and carriage returns. Most dot matrix printers have a "home" position detect switch that can be used to start a timing loop to perform the reading of the IR detector.

You could print a whole line of either " " spaces or filled blocks (chr$(219) in the old DOS days). That way you can get about 8 bytes per line roughly after the overhead.
If you go with the dot mattrix printer, you'll also be able to use the old box of continuous paper. No cutting required!

Of course, there are some very simple cassette tape storage formats to consider. Also, Flash memory is quickly becoming economical.

Good luck!

Daryl


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Apr 22, 2003 6:08 am 
Offline

Joined: Sat Jan 04, 2003 10:03 pm
Posts: 1706
8BIT wrote:
Why not keep the paper whole? I've seen plans for a poor-man's scanner built from an old dot matrix printer. You simply attach the IR LED/Receiver to the print head via a flexible cable, and let the printer do all the mechanical work for you. It also can print (save) or scan (load). To load, just send a series of spaces and carriage returns. Most dot matrix printers have a "home" position detect switch that can be used to start a timing loop to perform the reading of the IR detector.


Too clumsy, and dot matrix printers are all but impossible to find here. Also, I know of at least one dot matrix printer (it's a Star Micronics printer, but I forget the exact model) that was smart enough to not budge the head on a line full of spaces. :)

Quote:
Of course, there are some very simple cassette tape storage formats to consider. Also, Flash memory is quickly becoming economical.


That's why I asked about the ability to program flash ROMs in an EPROM burner, to which I still haven't received a reply. :) That being said, I hadn't considered audio cassette storage. And it'd be a heck of a lot faster to load than paper tape. I could throughputs approaching 1200 to 1500bps with it.

Thanks for the suggestion. I'll have to tinker with the idea some more.

--
Samuel A. Falvo II


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Apr 22, 2003 7:24 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8544
Location: Southern California
(This thread is sure evolving to where it has little to do with the original title, but I'll continue it...)

> That being said, I hadn't considered audio cassette storage. And it'd be
> a heck of a lot faster to load than paper tape. I could throughputs
> approaching 1200 to 1500bps with it.

I'm not sure I've ever heard of reliable cassette storage at that kind of speeds, has anyone else? With the problems of flutter (remember that tape recorder term?), tape dropouts, unmatched speeds from one machine to another, and so on, wouldn't it be preferable to settle for a lower data rate and do something like frequency modulation, where each bit is represented by at least four cycles of a tone?

I made a couple of modems to do this years ago. The data integrity seemed to be excellent for all the testing I did on it, although I never really put it to actual use. You just plug it into an RS-232 line. Mark was 2400 Hz and space was 1200 (or vice-versa—I don't remember.) If there was a chance the tape speed could be way off, you can remedy the problem and still use the modem by implementing a really short frame length. I made it for use at 300 bps, but I was surprised that even at twice that rate it could go sometimes a page or two of text without an error. If you omit the line driver and receiver so you'd just connect it directly to a UART, you can get the price down to a buck or two in common parts.

Mike— maybe I should send you a diagram of that to post as well.

Garth

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
 Post subject: some great ideas!!
PostPosted: Tue Apr 22, 2003 11:29 am 
Offline

Joined: Tue Mar 18, 2003 12:21 am
Posts: 36
Location: ChristChurch New Zealand
some great ideas on this thread - hehe nothing to do with my origional post but good!

yeah I can get a hold of a great kit which I can build fairly cheaply - and which programs most eproms.

but getting ahold of a uv eraser is not looking good at the moment!

I mean I could replace the eprom for my first project with memory emulated via serial port but thats really far to slow as we all know - memory backed up by battery is promising!

anyone got any ideas on battery backed up ram!?

if I could get ahold (eraser)- even if I knew someones in the area that I could use from time to time - i'll find out!

_________________
NPastoll


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

All times are UTC


Who is online

Users browsing this forum: No registered users and 36 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: