This page
http://srecord.sourceforge.net/ is about S-record software. I mentioned it in my
Large Look-up Tables for Hyperfast, Accurate, 16-Bit Fixed-Point/Scaled-Integer Math page of my website. The software lets you test and transform EPROM file types, concatenate, split, etc.. Version 1.52 is in the Ubuntu (Linux) software center for one-click download and installation. Enter "EPROM" for a search term and it comes right up. SRecord is command-line-only, which initially made it confusing because I didn't see any new icons and couldn't find it under "Applications". 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 really have to read.
In your signature line,
Code:
:01030000A20AF4
:0103020000CA32
:01030300D0FD2F
:01030500006049
:00000001FF
what it says is, starting from address 0300, A2 0A
00 CA D0 FD
00 60, with the underlined 00's being unwanted extras. The 01 at the beginning of each line means there's one byte of data, when you actually have two; so an error condition would probably be flagged. I didn't check the checksum bytes. To make it say A2 0A CA D0 FD 60 starting at address 0300 with such short lines, you need:
Code:
:02030000A20A4F
:02030200CAD05F
:02030400FD609A
:00000001FF
It's easy to make a mistake when doing it by hand. Hopefully I got it all correct. The description of Intel Hex is on my website at
http://wilsonminesco.com/16bitMathTables/IntelHex.html .
A2 0A CA D0 FD 60 would translate to:
Code:
LDX #$0A
DEX
BNE label
or, with the structure macros
,
Code:
FOR_X 10, DOWN_TO, 0
NEXT_X
an empty FOR...NEXT loop.
Intel Hex lines are normally made to be quite a bit longer, typically holding 16 or 32 data bytes, although the lines of a file don't have to be all the same length. Putting this all on one line would be:
Code:
:06030000A20ACAD0FD6054
:00000001FF