|
Welcome to the JALv2 homepage. JALv2 is a rewrite of
Wouter van Ooijen's famous Just Another Language.
More JAL bits and libraries can be found:
- jallib -- libraries for everything
-
http://code.google.com/p/jallib/
- Rob Hamerling's Homepage for all Microchip device files
-
http://www.robh.nl/
- Single Multiple with Constant Calculator
-
http://www.casadeyork.com/jalv2/cmul.cgi
- Original JAL
-
www.voti.nl/jal/index_1.html
- Stef's PIC Pages
- http://pic.flappie.nl
- Wattystuff
-
http://www.wattystuff.net/tiki/tiki-index.php?page=PIC+Micro
- Bert van Dam Pages
-
http://members.home.nl/b.vandam/
- Yahoo Group
-
http://tech.groups.yahoo.com/group/jallist
|
Release history:
- 2.4n -- 2 June 2010
- added inline assembly statement mulwf (thanks hawkdavid52)
- pic_value_is_zero doesn't work with pointers
(bugreport_20100502)
- broken arrays passed to functions
(bugreport_20100523)
- fixed `asm bank ' for 16 bit cores
- Implicitly created pseudo-variables must be created in the same
block as the true variable (bugreport_20100506).
- On the 16 bit cores, if a pseudo-variable is implicitly created,
the l_main label is somehow deleted causing the generated
code to not work.
- minor optimization when using 'case' with bit values.
assign the bit to a temporary first to avoid shifting/masking
for each case.
- 'case 0' on a multi-bit variable fails
- Added 14 bit hybrid support (thanks Rob!)
- Fixed the defined() operator to return a bit (as documented)
so no more warnings or need to compare with 'true'
- Issue a diagnostic if a value overflows a UNIVERSAL (is > 32 bits)
(bugreport_20100424)
- Allow octal constants (0q...)
- In some circumstances an aliased value would get confused
- Invalid assert on add with the 14 bit hybrid
- The logic in UNIVERSAL value overflow was wrong, causing a
spurious message in edge cases.
- The MOVLB optimizer was not seeing functions only called
indirectly.
- Added '\\' to the language documentation.
- 2.4m -- 26 Dec 2009
- Fixed documentation for '-include'
- Added '[no-]asm', '[no-]codfile', '[no-]log', '[no-]lst'
'[no-]hex'.
- IF expr THEN END IF caused the compiler to crash
- Software stack was not being calculated when -no-variable-reuse
in effect.
- Directly accessing the 0th element (ch = buf[0]) of a
pointer caused either an assertion failure or a segfault
- Fixed COD generation
- Added ID programming support with PRAGMA ID and
PRAGMA IDDATA
- Added 'movlb 0' to the ISR preamble on 16 bit cores
- Fixed `db' & `dw' on 16 bit cores
- Fixed PC which was formerly 16 bits, but can be 32 bits
on the 16 bit cores.
- Restructed the archive directory layout
- Converted the three major guides (jalv2, jalv2opt, jalv2pragma)
to docbook format in the hopes that this will help me keep
everything up to date.
- EEPROM data on the 16 bit cores started at location 0
('cause the variable created was only 16 bits, whereas
eeprom on the 16 bit cores starts higher than 0xffff).
- a re-entrant function taking an array parameter caused an
invalid assertion failure
- in some cases a SEGFAULT would occur when passing an
array parameter
- turned on const comparison warnings (when a comparison
is always TRUE or FALSE)
- turned on overflow warnings (when a universal value is
used that does not fit with its counterpart)
- fixed COD file generation
- check function parameters for type & overflow
- comparing a single bit variable and a single bit constant
does not work if -no-expr_reduce is set.
- emit an error if an attempt is made to create a bit
array (bit arrays are not supported).
- added `pragma bootloader bloader' and `pragma bootloader loader18'
- fixed `pramga' --> `pragma' in the inline error message
- fixed the TRIS parameters in the online manual
- added `addwfc' to inline assembly
- fixed aliasing at different block levels (eg, an alias
in a procedure referencing a global)
|
Lastest release files (JALv2 2.4n):
- README.txt
- archive/README.txt
- Binaries (win32 and linux with chipdef files)
- archive/jalv24n.zip
- Sources
- archive/jalv24nsrc.zip
Archive
Bleeding edge files. Warning -- these are probably in the midst
of being tested, and some features may not work. Always look at the
README file to see what changes have come in! The version is always
one higher than the last release.
- README.txt
- archive/beta/README.txt
- Binaries (win32 and linux with chipdef files)
- archive/beta/jalv24n-beta.zip
- Sources
- archive/beta/jalv24n-betasrc.zip
Documentation
Curious Perversions
These are just some minor projects I've done that probably don't
belong in either a MicroController, or in JAL. Use at your own
risk!
|