Add tasks for all the new languages
This commit is contained in:
parent
9dc3c2bb62
commit
bba7bfd280
13208 changed files with 134745 additions and 0 deletions
|
|
@ -0,0 +1,23 @@
|
|||
' FB 1.05.0 Win64
|
||||
|
||||
' Attempt to call Beep function in Win32 API
|
||||
Dim As Any Ptr library = DyLibLoad("kernel32.dll") '' load dll
|
||||
|
||||
If library = 0 Then
|
||||
Print "Unable to load kernel32.dll - calling built in Beep function instead"
|
||||
Beep : Beep : Beep
|
||||
Else
|
||||
Dim beep_ As Function (ByVal As ULong, ByVal As ULong) As Long '' declare function pointer
|
||||
beep_ = DyLibSymbol(library, "Beep")
|
||||
If beep_ = 0 Then
|
||||
Print "Unable to retrieve Beep function from kernel32.dll - calling built in Beep function instead"
|
||||
Beep : Beep : Beep
|
||||
Else
|
||||
For i As Integer = 1 To 3 : beep_(1000, 250) : Next
|
||||
End If
|
||||
DyLibFree(library) '' unload library
|
||||
End If
|
||||
|
||||
Print
|
||||
Print "Press any key to quit"
|
||||
Sleep
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
-- calculate CRC-32 checksum
|
||||
str = "The quick brown fox jumps over the lazy dog"
|
||||
|
||||
-- is shared library (in Director called "Xtra", a DLL in windows, a sharedLib in
|
||||
-- OS X) available?
|
||||
if ilk(xtra("Crypto"))=#xtra then
|
||||
|
||||
-- use shared library
|
||||
cx = xtra("Crypto").new()
|
||||
crc = cx.cx_crc32_string(str)
|
||||
|
||||
else
|
||||
|
||||
-- otherwise use (slower) pure lingo solution
|
||||
crcObj = script("CRC").new()
|
||||
crc = crcObj.crc32(str)
|
||||
|
||||
end if
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
proc openimage(s: cstring): cint {.importc, dynlib: "./fakeimglib.so".}
|
||||
|
||||
echo openimage("foo")
|
||||
echo openimage("bar")
|
||||
echo openimage("baz")
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
#include <stdio.h>
|
||||
/* gcc -shared -nostartfiles fakeimglib.c -o fakeimglib.so */
|
||||
int openimage(const char *s)
|
||||
{
|
||||
static int handle = 100;
|
||||
fprintf(stderr, "opening %s\n", s);
|
||||
return handle++;
|
||||
}
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
proc openimage(s: string): int {.importc, dynlib: "./libfakeimg.so".}
|
||||
|
||||
echo openimage("foo")
|
||||
echo openimage("bar")
|
||||
echo openimage("baz")
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
# nim c --app:lib fakeimg.nim
|
||||
var handle = 100
|
||||
|
||||
proc openimage*(s: string): int {.exportc, dynlib.} =
|
||||
stderr.writeln "opening ", s
|
||||
result = handle
|
||||
inc(handle)
|
||||
Loading…
Add table
Add a link
Reference in a new issue