6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sun Sep 29, 2024 7:19 am

All times are UTC




Post new topic Reply to topic  [ 184 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7, 8 ... 13  Next
Author Message
PostPosted: Tue Sep 25, 2012 11:54 pm 
Offline
User avatar

Joined: Mon Aug 08, 2011 2:48 pm
Posts: 808
Location: Croatia
ElEctric_EyE wrote:
pay attention to power distribution.

On my first try i ignored that tip, but i knew that i had to fix the power eventually...
In a system where you have the absolute minim of components, it can work even if you ignore that tip a bit. As soon i expanded my system a bit it stopped working. I suspected that that was the issue, so i attached a 470uf capacitor to the eeprom power pins(because of the pin configuration) and it worked once again. Later i had to strip all the thin power wires and put more appropriate wires and make some space for more capacitors(i also added 100uf electrolyte cap near the cpu). Even today i don't have one capacitor for every ic, and it is semi daisy chained, but it works, and i don't plan to fix it, since i am making a new sbc from scrap.

Also when you start building, you must test every step. My first test was the free run test, where i hardwired the cpu data bus to the nop opcode, and i soldered led-s to the address lines, and every led blinked with half frequency of the previous. Next step was adding rom, i soldered led-s to some unused decoded addresses, and the program accessed in a slow loop the addresses of the led-s, by doing that the led-s toggled on and off. Next was ram, i tested it too in a similar way, and after that i added the first i/o device(the VIA chip, 6522).


Top
 Profile  
Reply with quote  
PostPosted: Wed Sep 26, 2012 8:09 am 
Offline

Joined: Wed Sep 19, 2012 6:19 pm
Posts: 122
Location: England
Thank you, Electric_Eye! Will do!


Top
 Profile  
Reply with quote  
PostPosted: Wed Sep 26, 2012 8:15 am 
Offline

Joined: Wed Sep 19, 2012 6:19 pm
Posts: 122
Location: England
Is there any way I can view the content of a .rom file? I was wondering if I could build an EEPROM programmer myself. This article inspired me:

http://z80dave.blogspot.co.uk/2011/09/2 ... ammer.html

It seems to me that I just have to send the address and the data/instruction byte then set the WE pin low. It would be fairly easy in Java or Python but I just could not figure out how to view the content of a .rom file. I assume it comprises of a series of address bytes and the corresponding data/instruction bytes. How can I open/view a .rom file in Python/Java? Or is there a way to convert it into text?


Top
 Profile  
Reply with quote  
PostPosted: Wed Sep 26, 2012 8:21 am 
Offline
User avatar

Joined: Tue Nov 16, 2010 8:00 am
Posts: 2353
Location: Gouda, The Netherlands
How will you interface the EEPROM device to a machine that will be running Python or Java ? Do you want to a Python script to talk to the UART, and send commands to the Arduino board shown in the article ?


Top
 Profile  
Reply with quote  
PostPosted: Wed Sep 26, 2012 8:26 am 
Offline

Joined: Wed Sep 19, 2012 6:19 pm
Posts: 122
Location: England
Something like that! I might use an atmega 328 with mutlitplexer though, the Mega is just way too expensive for that. But yes, the idea would be to interface the ROM pins with the Arduino digital pins and send the content of the rom file from python/java. I just wonder how can I dissect the rom file to be sent?


Top
 Profile  
Reply with quote  
PostPosted: Wed Sep 26, 2012 5:45 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8521
Location: Southern California
alkopop79 wrote:
Is there any way I can view the content of a .rom file? I was wondering if I could build an EEPROM programmer myself. This article inspired me:

http://z80dave.blogspot.co.uk/2011/09/2 ... ammer.html

It seems to me that I just have to send the address and the data/instruction byte then set the WE pin low. It would be fairly easy in Java or Python but I just could not figure out how to view the content of a .rom file. I assume it comprises of a series of address bytes and the corresponding data/instruction bytes. How can I open/view a .rom file in Python/Java? Or is there a way to convert it into text?

The most common type of assembler output file is probably Intel Hex-- either that or Motorola S-record. They're both just text files, so you can view them with any text editor. I have a description of Intel Hex on my website in the large math look-up tables section, at http://wilsonminesco.com/16bitMathTables/IntelHex.html.

_________________
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  
PostPosted: Wed Sep 26, 2012 5:51 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10939
Location: England
The 'xxd' program for Linux (or for Cygwin on Windows) will dump a binary file, and can also undump one, which means you can edit the hex as text and convert back to a rom. (I'm assuming a *.rom file is binary, which is to say for an 8k ROM the file will contain 8192 bytes. No formatting or metadata.)

The 'srecord' program (all platforms) will convert between many formats: binary, Intel, Motorola and more.
See http://srecord.sourceforge.net/download.html


Top
 Profile  
Reply with quote  
PostPosted: Wed Sep 26, 2012 6:19 pm 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8406
Location: Midwestern USA
GARTHWILSON wrote:
The most common type of assembler output file is probably Intel Hex-- either that or Motorola S-record. They're both just text files, so you can view them with any text editor. I have a description of Intel Hex on my website in the large math look-up tables section, at http://wilsonminesco.com/16bitMathTables/IntelHex.html.

Here's a description of the Motorola S-record format. In the description, the author says:

    S0 Record. The address field is unused and will be filled with zeros (0x0000). The code/data field contains descriptive information identifying the following block of S-records as having been created by EASy68K.

In actuality, the code/data field of an S0 record may contain any arbitrary text, such as a program name, copyright notice, etc.

Having worked with the Intel, MOS Technology and Motorola formats, I'm inclined to use the latter, as it is the most flexible and adaptable. The Intel hex format is a bit of a hodge-podge, in that kludges were added to handle the segmented addressing of the 8088 and later MPUs. I don't recommend its use at all.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Wed Sep 26, 2012 7:41 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8521
Location: Southern California
Quote:
Having worked with the Intel, MOS Technology and Motorola formats, I'm inclined to use the latter, as it is the most flexible and adaptable. The Intel hex format is a bit of a hodge-podge, in that kludges were added to handle the segmented addressing of the 8088 and later MPUs. I don't recommend its use at all.

Most things people here will do will have less than 64KB of (E)EPROM space, so they won't be using the type 03 Intel Hex record. I did use it for the large math look-up tables and it was convenient for that because you can manually edit what banks you want the different tables in without changing the individual lines' address fields. I have not used the type 04 which IIRC is for when you go over a megabyte. All three commercial assemblers I've used (including MPASM for the PICs) put out Intel Hex as a default, so that's what I settled into. I don't know if a line starting without a colon could be used for comments like a Mot S0 record. It seems like it could, but I've never tried it.

I've used SRecord 1.60 (for linux) which Ed recommended, to check the validity of files I formed with programs I wrote. It has a ton of abilities to convert EPROM file types and so on. The voluminous .pdf manual could stand to have better command-line examples, but you'll figure it out. Much of the manual is spent on telling about multitudes of file types you will never use, so there's not really that much that you have to read.

Device programmer software will also be able to do file-type conversions, like from Intel Hex to Mot S record to binary, etc..

_________________
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  
PostPosted: Wed Sep 26, 2012 8:19 pm 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8406
Location: Midwestern USA
GARTHWILSON wrote:
Device programmer software will also be able to do file-type conversions, like from Intel Hex to Mot S record to binary, etc..

For burning EPROMs I just save the object code as raw binary, since data transmission corruption will not get into the picture. If I want to execute code in RAM on the POC I send it over as S-records.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Wed Sep 26, 2012 11:22 pm 
Offline

Joined: Wed Sep 19, 2012 6:19 pm
Posts: 122
Location: England
Great, thanks!


Top
 Profile  
Reply with quote  
PostPosted: Thu Sep 27, 2012 11:09 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8521
Location: Southern California
Quote:
Quote:
Quote:
I wonder, how do WW components like the crystal or and LED? Can they be wire wrapped or do they need some sort of socket?

I don't think they can be wire-wrapped (wire-wrap sockets have square pins). One option is to simply put them in stand DIL WW sockets.

Things like LEDs and resistors can be wire-wrapped but then need to be soldered, unlike .025" square posts. If the part can have a crystal connected directly, go ahead and use the crystal (like the 65c51 normally calls for); but otherwise don't bother trying to make an oscillator. Just get one in a can (like Ed recommended at viewtopic.php?f=1&t=2280&start=3) that plugs into an 8-pin or 14-pin SIP socket. They take less work and space and are more reliable than making your own, and possibly even cheaper.

The pirmer addresses both of these, but I just added the part about wire-wrapping things like resistors yesterday.

and I just added some more today about putting discrete components in WW construction, at http://wilsonminesco.com/6502primer/WireWrap.html, about 30% of the way down the page, including pictures of individual pins and a DIP header.

_________________
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  
PostPosted: Fri Sep 28, 2012 4:47 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8406
Location: Midwestern USA
GARTHWILSON wrote:
and I just added some more today about putting discrete components in WW construction, at http://wilsonminesco.com/6502primer/WireWrap.html, about 30% of the way down the page, including pictures of individual pins and a DIP header.

Looks good. In the past I've used lots of those Vector T44 and T68 pins. As with other parts that come into direct contact with the wire itself, beware of contamination from skin oils. Oftentimes, the circuitry will work with contaminated wire or posts, only to conk out months or years later, leaving the technician totally baffled about the failure cause.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 4:56 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8521
Location: Southern California
Thanks. I just added a reminder to that effect.

_________________
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  
PostPosted: Fri Sep 28, 2012 6:48 am 
Offline

Joined: Wed Sep 19, 2012 6:19 pm
Posts: 122
Location: England
Garth, your tutorial is probably the best and most exhastive resource about WW. Thsnk you! Just one thing that came to my mind: is it worth to get some alcohol or degreaser to clean the posts?


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 184 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7, 8 ... 13  Next

All times are UTC


Who is online

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