Welcome to the Jalv2 & Jallib website!

JAL (Just Another Language, version 2) is an open source programming language built for programming PIC microcontrollers. If electronics is your thing, JAL is for you!

Jallib is a set of open source JALv2 libraries to make things work. Download our libraries to see what is available.

Check out our FREE The Tutorial Book for PIC microcontroller how-to's:


We are looking for more libraries and more fun! Please share and contribute!


I want split a word variable to two bytes, what's the best way to do it in JAL ?

A common way to address the individual bytes of a word (or larger)
variable is to split it as an array of bytes.

This can be done as follows

var word w
var byte wb[2] at w

You can then refer the two bytes of the word w as wb[0] and wb[1]

If the individual bytes of the array wb[0] and wb[1] need a specific name alias keyword can be used as given below.

alias hibyte is wb[0]
alias lowbyte is wb[1]

Search JAL Sites

This is a custom google search on the following jal related sites and mailing lists.


Where can I get a good introduction for JAL and PICs

This website has a very good introduction PICs and JAL available at http://justanotherlanguage.org/content/jallib/tutorials/tutorial_getting_started
The original author, Wouter too has a Starting With PIC guide which is a bit dated.

What does JAL stand for ?

JAL is TLA (Three Letter Acronym) which stands for Just Another Language

Print & Format

Formatting output data with Print & Format

Print & Format

In a previous tutorial (Serial Port and RS-232 for communication) You probably noticed it is annoying to have to change RealTerm from ASCII to HEX in order to see output of numbers. It is also not easy to view raw HEX data. You will probably want to be able to output decimal numbers to make it easy on us humans. This is where the print and format libraries come in!