OK, well I’ve just started developing code for the Ubicom (Scenix) SX28 PIC chip, and I ran into problems.

Firstly, what I’m using…

SASM assembler from the Ubicom site (currently V1.48)
PICALLW v0.13c to program the chip

I’m using these tools because, I don’t have SX-key, MPLAB is good, but the simulator doesn’t handle the IREAD instruction.

My initial problems were that PICALLW whinged about the addresses SASM created for the ID string. If you don’t have an ID string, SASM still generates the code for one. So there’s no getting away from the problem.

Then there’s the FUSE and FUSEX addresses. PICALLW whinged about these too.

So I wrote a program called SASM_FIX that takes the output .HEX file and alters it so that PICALLW is happy. What it actually does if keep a track of the highest RAM address used, and puts the ID data there.

As for the FUSE and FUSEX, it simply alters the address to one which PICALLW is happy with, and recalculates the checksum.

So far so good. Then one day I needed a simulator/tracer to see what the code was doing. SXSIM (V1.11) to the rescue. The only problem was, SXSIM didn’t like the format of the .LST file generated by SASM. So, I hacked my SASM_FIX program to tweak the .LST file too.

So I present to you SASM_FIX.EXE  (12k) V1.05

I use it in a batch file such as A.BAT

sasm %1

sasm_fix %1

and then call it with

C> a myprog

I hope it is of some use to someone, but I give no guarantees.

Click to email me 27th Dec 2002
 

Unique users since 26th July 2004 Web Counter
RedEnvelope.com coupon code