Skip to content

Instantly share code, notes, and snippets.

View jonte's full-sized avatar
🍺
Cheers!

Jonatan Pålsson jonte

🍺
Cheers!
View GitHub Profile
@jonte
jonte / bom1.md
Last active August 29, 2015 14:27
ELFA Shopping list for the "Make: Electronics" book
@jonte
jonte / gist:716727
Created November 26, 2010 13:46
Trigger of 'effin doom
DROP TRIGGER CourseOverFlowTrigger;
CREATE TRIGGER CourseOverflowTrigger
INSTEAD OF INSERT ON WaitingListView
REFERENCING NEW AS NewRow
OLD AS OldRow
FOR EACH ROW
DECLARE maxStudents NUMBER;
regedStudents NUMBER;
maxPlacement NUMBER;
numMissingCourses NUMBER;
@jonte
jonte / NoDupes.erl
Created January 4, 2011 14:24
Add an entry to a list without causing a dupe
New = 1,
CompleteList = [1,2,3,4,5], % 1 is already in list
NoDupes = [New | lists:delete(New, CompleteList)].
@jonte
jonte / js_test_execution
Created January 21, 2011 14:55
When run, it looks like this
8> js_test:run().
{ok,<<"Hello, Generic Game Server">>}
@jonte
jonte / js_test.erl
Created January 21, 2011 14:53
Running javascript from Erlang using erlang_js and SpiderMonkey
-module(js_test).
-export([run/0]).
run() ->
erlang_js:start(),
{ok, Port} = js_driver:new(),
ok = js:define(Port, <<"function helloworld(name){return 'Hello, ' + name}">>),
js:call(Port, <<"helloworld">>, [<<"Generic Game Server">>]).
@jonte
jonte / js_runner.erl
Created January 25, 2011 15:54
js_runner
-module(js_runner).
-export([executeJS/2, boot/0]).
boot() ->
erlang_js:start(),
{ok, Port} = js_driver:new(),
Port.
executeJS(Port, Data) ->
ok = js:define(Port, <<"function helloworld(name){return 'Hello, ' + name}">>),
@jonte
jonte / v8test.erl
Created January 27, 2011 00:54
v8test.erl
-module(v8test).
-export([run/0]).
-include_lib("erlv8/include/erlv8.hrl").
run() ->
application:start(erlv8),
{ok, VM} = erlv8_vm:start(),
Global = erlv8_vm:global(VM),
Global:set_value("callback", erlv8_object:new([{"exec", fun (#erlv8_fun_invocation{}, []) -> myCallback() end}])),
erlv8_vm:run(VM,"callback.exec();").
#include <stdio.h>
#include <stdlib.h>
int main(){
FILE *fpipe;
char *command="echo \"2+2.\" | erl_call -sname ggs -e";
char line[256];
if ( !(fpipe = (FILE*)popen(command,"r")) ){
perror("Problems with the pipe");
exit(1);
@jonte
jonte / gist:972206
Created May 14, 2011 13:26
LLVM register error
; The error:
; llvm-as: core012.ll:84:1: error: instruction expected to be numbered '%4'
; %3 = getelementptr [6 x i8]* @.const1, i32 0, i64 0
; ^
define void @printBool(i1 %par.b) {
entry:
@jonte
jonte / Instructions
Created December 16, 2013 11:53
Instructions for getting backlight working on UX301LAA ultrabook
Core problem:
Fn buttons are controlled via ACPI. ACPI is configured via a board specific firmware called the DSDT. The DSDT sections for backlight broken for UX301LAA, so it needs fixing. I have attached my DSDT file which work on my machine (I have not tested it extensively, but backlight works at least).
#1 Dump the current DSDT to a file:
cat /sys/firmware/acpi/tables/DSDT > dsdt
#2 The DSDT is compiled, so we need to decompile it
iadsl -d dsdt
#3 Often, the file is not properly decompiled, so re-compile it in order to discover any de-compilation errors. Fix any errors (the code is probably unparsable if there are errors, so you need to guess the correct semantics).