gnupic: Re: [gnupic] SPASM - a MPASM behave alike


Previous by date: 6 Jun 2009 21:03:59 -0000 SPASM - a MPASM behave alike, Holger Rapp
Next by date: 6 Jun 2009 21:03:59 -0000 Re: [gnupic] SPASM - a MPASM behave alike, Holger Rapp
Previous in thread:
Next in thread: 6 Jun 2009 21:03:59 -0000 Re: [gnupic] SPASM - a MPASM behave alike, Holger Rapp

Subject: Re: [gnupic] SPASM - a MPASM behave alike
From: David Barnett ####@####.####
Date: 6 Jun 2009 21:03:59 -0000
Message-Id: <4d52f78b0906061403w1d09b7f0i1d48630bd92cca72@mail.gmail.com>

Holger,

Haven't run the program itself, but from the description it sounds nice.
I've been trying for a while to split out gpasm's preprocessor from the
assembler (to support several of the features you've implemented), but I
kept running into quirks of lex and yacc and getting stuck (e.g. there's
some kind of magic to having multiple parsers in one project).

A lot of people want the portability of pure C, so it's good that gputils
exists. However, I think with MCU development you want to do everything you
can on the host and get a small, optimized binary, and it seems like there's
only so far you can go down that path implementing the assembler in C before
it gets completely unmaintainable. I'm a Python guy myself, and I'm hoping
that using Python will help lift some of those burdens that have held
gputils back.

I'm excited to see some progress, at any rate. Thanks for pitching in!

David

On Sat, Jun 6, 2009 at 8:51 AM, Holger Rapp ####@####.#### wrote:

> Hi,
>
> I spent some time hacking on a PIC assembler implementation in pure python.
> You can find my efforts here:
> https://code.launchpad.net/spasm
>
> I'd really like opinions from you guys. You did a terrific job with gpasm
> which helped me a lot. But I needed complete
> macro support and #defines with arguments.
>
> Following are the feature list and how to install it as python newbie.
>
> Feature list:
> - Support for all chips that gpasm supports
> - Support for #defines with arguments
> - Full support of Macro definitions
> - Full support of #v(val) substitutions
>
> No implemented:
> - Support for EEPROM device programming. EEPROM8s might work, EEPROMS16
> quite
>  surely not
> - Support for LIST file generation
> - Support for relocatable output
> - 18* support is very sparse, since there weren't many test cases in the
> testsuite of microchip. Things like
> config A=1 are not supported but could easily be added.
>
> How to install:
> - have python installed
> - get the PLY library (under mac os/linux try $ ./easy_install ply),
> python-ply package in debian/ubuntu; You need a recent version (>3.0)
> - get bzr (versioning tool like svn; also try $ ./easy_install bzr),
> package bzr in debian/ubuntu.
> - get spasm: $ bzr get lp:spasm
> - $ cd spasm
> - $ python setup.py build (this might take a while)
> - $./spasm.py <your assembler file>
>
>
> I won't have time to continue development in the nearer future, therefore I
> release it as is into the public with the hope someone
> will continue on it. I will obviously provide any help I can.
>
> Cheers,
> Holger
>
>
>

Previous by date: 6 Jun 2009 21:03:59 -0000 SPASM - a MPASM behave alike, Holger Rapp
Next by date: 6 Jun 2009 21:03:59 -0000 Re: [gnupic] SPASM - a MPASM behave alike, Holger Rapp
Previous in thread:
Next in thread: 6 Jun 2009 21:03:59 -0000 Re: [gnupic] SPASM - a MPASM behave alike, Holger Rapp


Powered by ezmlm-browse 0.20.