User Tools

Site Tools


l0dable

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
l0dable [2011/12/29 23:49]
0xtob [Unsigned .c files]
l0dable [2011/12/30 13:14]
emdete
Line 1: Line 1:
-L0dables are small (<2.5k) loadable modules for the r0ket firmware. <​del>​In the default released firmware these need to be encrypted signed to be run (only true for original camp firmware)</​del>​ The default l0dables are+==== l0dable documentation ====
  
-  * BLINK {{:blink.c0d}} +This page documents to how to write a [[l0dable]]depending on the font you are seeing this looks like "I/O dables"​ but meant is "​loadable"​these are small software components (in opposite to [[m0duls]] which are hardare components) that can easily copied to the [[r0ket]]Once you are done with you l0dable please mention it in [[l0dables]].
-  * INVADERS {{:invaders.c0d}}   ​**--New new version: workaround for mesh problems.** +
-  * MANDEL {{:mandel.c0d}} +
-  * PWGEN {{:​pwgen.c0d}} +
-  * ROCKETS {{:​rockets.c0d}} +
-  * RECVCARD {{:​recvcard.c0d}} +
-  * SENDCARD {{:​sendcard.c0d}}+
  
-l0dables which replace the nickname display have the extension .NIK +Set up build environment as described in [[build]]
-  * ANIM {{:​anim.nik}} +
-  * IMAGE {{:​image.nik}} +
-  * LIFE {{:​life.nik}} +
-  * PLAIN {{:​plain.nik}} +
-  * SCR0LL {{:​scr0ll.nik}}+
  
-After-release l0dables:+<​code>​ 
 +cd firmware/​l0dable/​ 
 +vi hello.c 
 +</​code>​
  
-  * SHOWCARD {{:​showcard.c0d}} +<code
-    * displays a vcard +#include <sysinit.h> 
-  * VOLTAGE {{:​voltage.c0d}} +#include <string.h> 
-    * Check your battery voltage and charging status +#include <stdlib.h>
-  * SNAKE {{:​snake.c0d}} +
-    * <some witty comment+
-  * MATRIX {{:matrix.nik}} +
-    * random characters :) +
-  * INVADERS {{:invaders.nik}} +
-    * invaders-style nickname +
-  * JUMP {{:​jump.c0d}} +
-    * a Doodle Jump clone +
-  * SCOPE {{:​scope.c0d}} +
-    * Oscilliscope which reads from the hackbus ports. Put your fingers on and see your electric field.+
  
-All these modules can be downloaded here and placed on your r0ket via the usb_storage mode.+#include "​basic/​basic.h" 
 +#include "​basic/​config.h"​
  
-If you write a l0dable, stop by at our table to get it integrated into the repositoryAs no signatures are needed any more, you can also simply put c/c0d file for download here or on your own server and link to it! Happy c0ding!+#include "​lcd/​render.h" 
 +#include "lcd/print.h"​
  
-====Fahrplan====+#include "​usetable.h"​
  
-28C3 Schedule on your r0ket. This l0dable is pre-installed in the 28C3 firmwares, but as the Fahrplan changes quite often updates are offered here. You need to have a current firmware though, so if you haven'​t done so so far, go to [[init]] and flash it.+void ram(void) 
 +
 +  lcdPrintln("​Hello"​);​ 
 +  lcdPrintln(GLOBAL(nickname));​ 
 +  lcdRefresh();​ 
 +  while (1){}; 
 +
 +</​code>​
  
-Newest version: http://y.nu/​r0ket-fahrplan.zip+more examples how to do stuff are in the l0dable directory.
  
-The Archive contains 4 files, ​the l0dable ​fahrplan.c0d and three editions of the schedule: fahrplan.scd is the 100K default, containing length limited texts, fp-mini.scd is only 8K for those needing their dataflash ​for other stuff, but contains only the titles. fp-big.scd finally contains full descriptions and eats up about half your r0kets dataflash. ​+==== Compiling ​the l0dable for the r0ket ====
  
-Simply unzip the archive, boot your r0ket while moving joystick down (to battery connector, not press), mount the USB volume and copy fahrplan.c0d and fahrplan.scd to it. For big or mini version simply copy it like cp fp-big.scd /​mnt/​mountpoint/​fahrplan.scd,​ as the l0dable always loads the file called fahrplan.scd. 
- 
-Using the Fahrplan: I hope it's quite self explaining, start the l0dable and after an init screen you are in the schedule, like: 
 <​code>​ <​code>​
-D1 1400+0100 2 +make hello.c0d 
-Hacking ​    na+</​code>​
  
-r0ket+++Select usb_storage on your r0ket, mount it and copy hello.c0d on the usb device. 
 +on OS X so not use the finder, use
  
-By: lilafisch, +<​code>​ 
- Stefan '​Sec'​+cp hello.c0d /​Volumes/​NO\ NAME/
 </​code>​ </​code>​
-First line shows Day (D1 to D4) starttime+duration and the room, second line the Track and language (na for not available). Then Title and description follow. 
  
-To navigate through the schedule press right or left for next and previous talk, they are sorted by Day, Time, Room so you will see them in the order like they happen and move forward through it as congress progressesWhen you leave the fahrplan by pressing the joystick it remembers your last position. Up/Down simply scroll through the description,​ we know it's hard to read, but - it's r0ket science!+make sure you unmount ​the device properly.
  
-Hint: if you use the fahrplan often and find it too deep down the listmount the volume, delete fahrplan.c0d ​and the first (or whatever position you want) l0dable in the list and then copy the fahrplan.c0d (and possibly a backup of the other l0dable...) back in that order +exit usb_storage, and run hello from the execute menu.
  
-====LeiwandVille Demo====+==== running in the simulat0r ​====
  
-We are proud to present you the official LeiwandVille Demo App for your batch. +<​code>​ 
- +cd simulat0r 
-===signed version=== +make APP=l0dable LAPP=hello 
-If you haven'​t flashed your badge, here is the official signed version: http://staging.magicbooks.org/r0ket/​leiwand.c0d. Just attach badge to computer, enter mass storage mode (menu -usb_storage) and copy the file to the mass torage device. Don't forget to unmount/​eject the device before unplugging!  +gui/build/qsimulat0r 
- +</code>
-===open source version=== +
- +
-Download the files http://​staging.magicbooks.org/​r0ket/​leiwand.c and http://​staging.magicbooks.org/​r0ket/​leiwand.h to the directory "​firmware/​l0dable"​ in your local copy of the GIT repo and make a release build as described in the r0ket wiki. +
- +
-==== Show *.lcd Files ====+
  
-This l0dable shows you .lcd files (images or animations) stored on your r0ket. +<​note> ​This [[l0dable]] will loop forever and you will have to reboot you [[r0ket]] after starting it</note>
-It also allows you to choose the animation speed. +
-(See also [[lcd_art|LCD Art]]+
-  * [[http://​ikarus4ever.ik.funpic.de/​cccamp2011/​l0dables/​showlcd/​|Download showlcd]] +
-    * [[http://​the-k3x.de/files/​uploads/​2011.08.11_11.25.46_showlcd.c0d|Mirror (signed .c0d)]] +
-    * [[http://​the-k3x.de/​files/​uploads/​2011.08.11_11.25.40_showlcd.c|Mirror (source, maybe not the latest verstion)]] +
-(Sorry for the lame hosting... I don't have webspace)+
  
-==== Unsigned .c files ==== 
-  * [[http://​the-k3x.de/​files/​uploads/​2011.08.11_11.29.41_tetris.c|Tetris]] 
-  * [[http://​the-k3x.de/​files/​uploads/​2011.08.11_11.29.49_dei_mudda.c|Dei Mudda]] 
-  * [[http://​dl.dropbox.com/​u/​37924579/​sign.c|Sign]] (see http://​xkcd.org/​363/,​ c0d file [[http://​dl.dropbox.com/​u/​37924579/​sign.c0d|here]]) 
-  * [[https://​github.com/​gasman/​wolfy|wolfy]] (Wolfenstein 3D style raycasting engine - [[http://​altaria.vm.bytemark.co.uk/​wolfy/​wolfy.c0d|c0d file]], [[http://​altaria.vm.bytemark.co.uk/​wolfy/​wolfy.png|screenshot]]) 
-  * Fixed blink.c [[http://​the-k3x.de/​files/​uploads/​blink.c|source]] [[http://​the-k3x.de/​files/​uploads/​blink.c0d|git signed .c0d]] 
-  * [[http://​dl.dropbox.com/​u/​1866047/​jump.c0d|r0ket JUMP!]] (a Doodle Jump clone) [[https://​github.com/​webholics/​r0ket/​blob/​master/​firmware/​l0dable/​jump.c|jump.c]] 
-  * [[http://​freakshare.com/​files/​zxe26v8o/​geekloc.c.html|original freakshare]] [[http://​the-k3x.de/​files/​uploads/​geekloc.c|mirror]] GeekLoc(TM) See which geeks are nearby :) (uses your configured nick) 
-  * [[https://​paste42.de/​1881/​battery.c|Battery:​ A graphical voltage replacement]] (CTHN Village) 
-  * [[https://​github.com/​telelo/​p0ng|simple singleplayer p0ng]] - n0w w0rking as l0dable 0n the badge! :D 
-  * [[https://​github.com/​stylesuxx/​waste-0-meter|waste-0-meter]] - let others know how wasted you are and keep track of your consumption 
-  * [[https://​github.com/​WilstonOreo/​r0ket/​blob/​master/​firmware/​l0dable/​rtr0ket.c|rtr0ket]] A tiny real-time raytracer with nickname for the r0ket! 
-  * [[https://​github.com/​0xtob/​r0ketstuff/​blob/​master/​okr0ket.c|okr0ket.c]] [[https://​github.com/​0xtob/​r0ketstuff/​blob/​master/​okr0ket.c0d|okr0ket.c0d]] Matchmaking for nerds. Find love with your r0ket! 
-For Nick-Animations,​ Animations and Images please see [[lcd_art|LCD Art]] 
l0dable.txt · Last modified: 2011/12/30 13:18 by emdete