Welcome to the CHICKEN Scheme pasting service

program that can't call C with blobs nor vectorss added by kevinfish on Sat Mar 11 02:01:01 2017

(load "stubs.so")

(use lazy-ffi srfi-13 srfi-26 ) ; debug)

(begin  #~"cpuidsdk.dll")

(define (qi x) (#~QueryInterface x return: pointer:))

(define-syntax cpuid
  (syntax-rules ()
    ((_ ?name ?code ?type0 ...)
     (define (?name)
       (#~~ (#~QueryInterface ?code return: pointer: ) ?type0 ...)))))

(cpuid  ci #x21452459  return: pointer:)

(define dlpath "")
(define dlname "cpuidsdk.dll")

(define CPUIDSDK_CONFIG_USE_EVERYTHING #x7FFFFFFF)

(cpuid di #x30571113  pointer:)

(set! objptr (ci))

(define (init objptr dll-path dll-filename config-flag errorcode errorcode-extended)
  (#~~ (qi #x19937329) pointer: objptr string: dll-path string: dll-filename int: config-flag pointer: errorcode
       pointer: errorcode-extended))

(set! err (u32vector 0))
(set! eerr (u32vector 0))

(set! foo  (init objptr dlpath dlname CPUIDSDK_CONFIG_USE_EVERYTHING err eerr))
;;(set! foo  (init objptr dlpath dlname CPUIDSDK_CONFIG_USE_EVERYTHING (u32vector->blob  err) (u32vector->blob eerr)))

Your annotation:

Enter a new annotation:

Your nick:
The title of your paste:
Your paste (mandatory) :
Which procedure can be used to check whether its argument is a procedure?
Visually impaired? Let me spell it for you (wav file) download WAV