Las: Largos LMM Assembler

Ever since coming up with the Large Memory Model in 2006 I’ve needed a good tool for writing LMM code. Other priorities intervened, but now I’ve finally had time to finish it – I expect to release an “alpha” test release by the end of this week.

Las currently runs on Windows, but will later also run on x86 Linux and OSX.

I will be updating this page with Las news and features as they become available.

Las Supports:

  • full Propeller instruction set
  • all Propeller condition prefixes
  • all Propeller effect codes
  • Pasm compatible storage allocation
  • Parallax “.binary” output format
  • Generating “COG” cog-only code
  • “LMM” code for HUB or XMM
  • hosted on Windows

Google search for poker: cialis tablets 100mg cerritosmedicalcenter.com 192,000,000 results. #3 – Mortgages Money lenders, in particular mortgages companies have A LOT of money to throw at being number one, and there are A LOT of them out there. viagra cheap generic The USENET has a tendency to be different. Why is it necessary cialis viagra australia to fight back against impotency and rejuvenating sexual life. It would not be wrong to say that it also would not work in your bulk generic viagra cerritosmedicalcenter.com case and information within our safe database.

Extensions:

  • native support for LMM instruction set extensions
  • automatically translates following ops to correct kernel calls and in-line constants in LMM mode
  • JMP
  • CALL
  • RET
  • LDI
  • PUSHI
  • PUSH
  • POP
  • YIELD
  • HALT
  • SYS
  • LIBCALL
  • additional pseudo operations for easier programming
  • CACHE/ENDCACHE block generated FCACHE and long count
  • Largos relocatable LMM executable format

Planned Extensions:

  • Macros
  • linkable object file format
  • Linux support (for x86)
  • OSX support (for x86)

Available Pseudo Operations:

  • $INCLUDE – include headers and/or other assembler source
  • OUTPUT – choose “IMAGE” (.binary) or “OBJ” (LMM) output
  • ORG – set hub origin
  • EQU – set assembler symbol to a value
  • COG – set cog origin and mode
  • LMM – set LMM mode
  • FIT – same as in pasm
  • RES – same as in pasm
  • END – mark end of file, optional

Coming Soon:

  • IF – conditional assembly
  • ELSE – else block
  • ENDIF – end of conditional assembly block
  • MACRO – start macro definition
  • ENDM – end of macro definition

Storage Allocation:

  • BYTE – byte storage, COG and LMM mode
  • WORD – word storage, COG and LMM mode
  • LONG – long storage, COG and LMM mode

Program Limits:

  • 512 longs maximum in a COG section
  • 512K longs in an LMM program (limit can be raised if needed)
  • Source not available, I am using some proprietary code
  • expression evaluation currently not working
  • Can use 4MB or moreof memory while running, it was written for speed
  • No linker (Largos Linker, lln, coming soon!)

I will be demonstrating Las at UPEW 2009!

Note:

You “$include registers.asm” at the top of your source code to have the standard Pasm and LMM registers defined.
Las verion 0.10 “Flying Pigs” pre-release

If you liked this article, please help us grow! "Like" us and let your friends know with the Twitter and Facebook buttons at the top left - We appreciate your support!