chickadee » allegro

allegro

Allegro 5 bindings for Chicken.

Disclaimer

Due to personal time constraints I have not fully tested these bindings, yet. If you discover any bugs, or even if you believe that some bindings could have a better implementation then please contact me with details.

Help!

I have limited time these days. If you could undertake any of the following it would be greatly appreciated:

1. Submit issues you discover to the GitHub issue tracker 2. Submit feature requests to the GitHub issue tracker 3. Correct any errors you discover in this documentation page 4. Add documentation where it is lacking 5. Send me an email if you find this egg useful!

Repository Location

The allegro egg can be located on the coop with chicken-install, or direct from its repository on GitHub.

Author

Dan Leslie (dan@ironoxide.ca)

Naming Key

In general, the naming is fairly indicative of the function's behaviour.

The gist is something like this:

make-type
Constructs a type (Not always available)
make-type*
Constructs a type, returning a value which must be manually destructed
free-type!
Manually destructs a type (Not available for internally managed types)
type-noun
Accessor for value "noun" on a specific type
type-noun-set!
Mutator for value "noun" on a specific type
type-verb
Method which requires a specific type to operate
type-verb!
Method which modifies an object of a specific type
verbage
Function which operates on the global state
verbage*
Function which operates on the global state, but also returns a value which must be manually destructed

If a function begins with a type name then you can be assured that the first parameter will be an object of that specific type.

audio-stream

audio-stream record

bitmap

bitmap record

color

color record
(make-color*) procedure
(make-color) procedure
(free-color! color) procedure
(color-red color) procedure
(color-green color) procedure
(color-blue color) procedure
(color-alpha color) procedure

condition

condition record

config

config record

config-entry

config-entry record

config-section

config-section record

cursor

cursor record

display

display record

display-mode

display-mode record
(make-display-mode*) procedure
(make-display-mode) procedure
(free-display-mode! display-mode) procedure
(display-mode-width display-mode) procedure
(display-mode-width-set! display-mode integer) setter
(display-mode-height display-mode) procedure
(display-mode-height-set! display-mode integer) setter
(display-mode-format display-mode) procedure
(display-mode-format-set! display-mode pixel-format) setter
(display-mode-refresh-rate display-mode) procedure
(display-mode-refresh-rate-set! display-mode integer) setter

driver

driver record
(free-driver!) procedure
(driver-id driver) procedure
(driver-ptr driver) procedure
(driver-autodetect driver) procedure

event-source

event-source record

event-queue

event-queue record

file

file record

file-interface

file-interface record

font

font record
(font-data font) procedure
(font-height font) procedure

fs-entry

fs-entry record
(fs-entry-vtable fs-entry) procedure

fs-interface

fs-interface record
(free-fs-interface! fs-interface) procedure
(fs-interface-create-entry fs-interface) procedure
(fs-interface-entry-name fs-interface) procedure
(fs-interface-update-entry fs-interface) procedure
(fs-interface-entry-mode fs-interface) procedure
(fs-interface-atime fs-interface) procedure
(fs-interface-mtime fs-interface) procedure
(fs-interface-ctime fs-interface) procedure
(fs-interface-entry-size fs-interface) procedure
(fs-interface-entry-exists? fs-interface) procedure
(fs-interface-remove-entry fs-interface) procedure
(fs-interface-open-directory fs-interface) procedure
(fs-interface-read-directory fs-interface) procedure
(fs-interface-close-directory fs-interface) procedure
(fs-interface-current-directory fs-interface) procedure
(fs-interface-make-directory fs-interface) procedure
(fs-interface-filename-exists? fs-interface) procedure
(fs-interface-remove-filename fs-interface) procedure
(fs-interface-open-file fs-interface) procedure

joystick

joystick record

joystick-state

joystick-state record
(make-joystick-state*) procedure
(make-joystick-state) procedure
(free-joystick-state! joystick-state) procedure
(joystick-state-button int) procedure

keyboard

keyboard record

keyboard-state

keyboard-state record
(make-keyboard-state*) procedure
(make-keyboard-state) procedure
(free-keyboard-state! keyboard-state) procedure
(keyboard-state-display) procedure

locked-region

locked-region record
(free-locked-region! locked-region) procedure
(locked-region-data locked-region) procedure
(locked-region-format locked-region) procedure
(locked-region-pitch locked-region) procedure
(locked-region-pixel-size locked-region) procedure

memory-interface

memory-interface record
(make-memory-interface*) procedure
(make-memory-interface) procedure
(free-memory-interface! memory-interface) procedure
(memory-interface-malloc memory-interface) procedure
(memory-interface-malloc-set! memory-interface (function c-pointer (integer32 integer (const c-string) (const c-string)))) setter
(memory-interface-realloc memory-interface) procedure
(memory-interface-realloc-set! memory-interface (function void (c-pointer integer (const c-string) (const c-string)))) setter
(memory-interface-calloc memory-interface) procedure
(memory-interface-calloc-set! memory-interface (function c-pointer (c-pointer integer32 integer (const c-string) (const c-string)))) setter
(memory-interface-free memory-interface) procedure
(memory-interface-free-set! memory-interface (function c-pointer (integer32 integer32 integer (const c-string) (const c-string)))) setter

mixer

mixer record

monitor

monitor record
(make-monitor*) procedure
(make-monitor) procedure
(free-monitor! monitor) procedure
(monitor-x1 monitor) procedure
(monitor-y1 monitor) procedure
(monitor-x2 monitor) procedure
(monitor-y2 monitor) procedure

mouse

mouse record

mouse

mouse-cursor record

mouse-state

mouse-state record
(make-mouse-state) procedure
(make-mouse-state*) procedure
(free-mouse-state! mouse-state) procedure
(mouse-state-x mouse-state) procedure
(mouse-state-y mouse-state) procedure
(mouse-state-z mouse-state) procedure
(mouse-state-w mouse-state) procedure
(mouse-state-buttons mouse-state) procedure
(mouse-state-pressure mouse-state) procedure
(mouse-state-axis mouse-state integer) procedure
(mouse-state-display mouse-state) procedure

mutex

mutex record

path

path record

sample

sample record

sample-id

sample-id record

sample-instance

sample-instance record

state

state record
(make-state*) procedure
(make-state) procedure
(free-state! state) procedure

system

system record

thread

thread record

timer

timer record

timeout

timeout record
(make-timeout*) procedure
(make-timeout) procedure
(free-timeout! timeout) procedure

transform

transform record
(make-transform*) procedure
(make-transform) procedure
(free-transform! transform) procedure
(transform-value transform i j) procedure

utf-string

utf-string record

version

version record
(version-major version) procedure
(version-sub version) procedure
(version-wip version) procedure
(version-release-number version) procedure
(version-string version) procedure
(version-date-string version) procedure
(version-date version) procedure
(version-int version) procedure

vertex

vertex record
(make-vertex*) procedure
(make-vertex) procedure
(free-vertex! vertex) procedure
(vertex-x vertex) procedure
(vertex-x-set! vertex float) setter
(vertex-y vertex) procedure
(vertex-y-set! vertex float) setter
(vertex-z vertex) procedure
(vertex-z-set! vertex float) setter
(vertex-u vertex) procedure
(vertex-u-set! vertex float) setter
(vertex-v vertex) procedure
(vertex-v-set! vertex float) setter

vertex-declaration

vertex-declaration record

vertex-element

vertex-element record
(make-vertex-element*) procedure
(make-vertex-element) procedure
(free-vertex-element! vertex-element) procedure
(vertex-element-attribute vertex-element) procedure
(vertex-element-attribute-set! vertex-element primitive-attribute) setter
(vertex-element-storage vertex-element) procedure
(vertex-element-storage-set! vertex-element primitive-storage) setter
(vertex-element-offset vertex-element) procedure
(vertex-element-offset-set! vertex-element integer) setter

voice

voice record

Event Records

any-event

any-event record
(any-event-type any-event) procedure
(any-event-source any-event) procedure
(any-event-timestamp any-event) procedure

display-event

display-event record
(display-event-type display-event) procedure
(display-event-source display-event) procedure
(display-event-timestamp display-event) procedure
(display-event-x display-event) procedure
(display-event-y display-event) procedure
(display-event-width display-event) procedure
(display-event-height display-event) procedure
(display-event-orientation display-event) procedure

event

event record
(make-event) procedure
(make-event*) procedure
(free-event! event) procedure

joystick-event

joystick-event record
(joystick-event-type joystick-event) procedure
(joystick-event-source joystick-event) procedure
(joystick-event-timestamp joystick-event) procedure
(joystick-event-id joystick-event) procedure
(joystick-event-stick joystick-event) procedure
(joystick-event-axis joystick-event) procedure
(joystick-event-position joystick-event) procedure
(joystick-event-button joystick-event) procedure

keyboard-event

keyboard-event record
(keyboard-event-type keyboard-event) procedure
(keyboard-event-source keyboard-event) procedure
(keyboard-event-timestamp keyboard-event) procedure
(keyboard-event-display keyboard-event) procedure
(keyboard-event-keycode keyboard-event) procedure
(keyboard-event-unichar keyboard-event) procedure
(keyboard-event-modifiers keyboard-event) procedure
(keyboard-event-repeat keyboard-event) procedure

mouse-event

mouse-event record
(mouse-event-type mouse-event) procedure
(mouse-event-source mouse-event) procedure
(mouse-event-timestamp mouse-event) procedure
(mouse-event-display mouse-event) procedure
(mouse-event-x mouse-event) procedure
(mouse-event-y mouse-event) procedure
(mouse-event-z mouse-event) procedure
(mouse-event-w mouse-event) procedure
(mouse-event-dx mouse-event) procedure
(mouse-event-dy mouse-event) procedure
(mouse-event-dz mouse-event) procedure
(mouse-event-dw mouse-event) procedure
(mouse-event-button mouse-event) procedure
(mouse-event-pressure mouse-event) procedure

timer-event

timer-event record
(timer-event-type timer-event) procedure
(timer-event-source timer-event) procedure
(timer-event-timestamp timer-event) procedure
(timer-event-count timer-event) procedure
(timer-event-error timer-event) procedure

user-event

user-event record
(user-event-type user-event) procedure
(user-event-source user-event) procedure
(user-event-timestamp user-event) procedure
(user-event-data1 user-event) procedure
(user-event-data1-set! user-event integer) setter
(user-event-data2 user-event) procedure
(user-event-data2-set! user-event integer) setter
(user-event-data3 user-event) procedure
(user-event-data3-set! user-event integer) setter
(user-event-data4 user-event) procedure
(user-event-data4-set! user-event integer) setter

Enums

audio-depth

(audio-depth->int audio-depth) procedure
(int->audio-depth integer) procedure
int8 constant
int16 constant
int24 constant
float32 constant
unsigned constant
uint8 constant
uint16 constant
uint24 constant

display-flag

(display-flag->int display-flag) procedure
(int->display-flag integer) procedure
windowed constant
fullscreen constant
opengl constant
direct3d-internal constant
resizable constant
noframe constant
generate-expose-events constant
opengl3 constant
opengl-forward-compatible constant
fullscreen-window constant
minimized constant

display-option

(display-option->int display-option) procedure
(int->display-option integer) procedure
red-size constant
green-size constant
blue-size constant
alpha-size constant
red-shift constant
green-shift constant
blue-shift constant
alpha-shift constant
acc-red-size constant
acc-green-size constant
acc-blue-size constant
acc-alpha-size constant
stereo constant
aux-buffers constant
color-size constant
depth-size constant
stencil-size constant
sample-buffers constant
samples constant
render-method constant
float-color constant
float-depth constant
single-buffer constant
swap-method constant
compatible-display constant
update-display-region constant
vsync constant
max-bitmap-size constant
support-npot-bitmap constant
can-draw-into-bitmap constant
support-separate-alpha constant

display-option-importance

(display-option-importance->int display-option-importance) procedure
(int->display-option-importance integer) procedure
dont-care constant
require constant
suggest constant

display-orientation

(display-orientation->int display-orientation) procedure
(int->display-oprientation integer) procedure
degrees-0 constant
degrees-90 constant
degrees-180 constant
degrees-270 constant
face-up constant
face-down constant

bitmap-flag

(bitmap-flag->int bitmap-flag) procedure
(int->bitmap-flag integer) procedure
memory-bitmap constant
keep-bitmap-format constant
force-locking constant
no-preserve-texture constant
alpha-test constant
min-linear constant
mag-linear constant
mipmap constant
no-premultiplied-alpha constant
video-bitmap constant

blend-operation

(blend-operation->int blend-operation) procedure
(int->blend-operation integer) procedure
add constant
source-minus-destination constant
destination-minus-source constant

blending-mode

(blending-mode->int blending-mode) procedure
(int->blending-mode integer) procedure
zero constant
one constant
alpha constant
inverse-alpha constant

blitting-flag

(blitting-flag->int blitting-flag) procedure
(int->blitting-flag integer) procedure
flip-horizontal constant
flip-vertical constant

channel-configuration

(channel-configuration->int channel-configuration) procedure
(int->channel-configuration integer) procedure
one constant
two constant
three constant
four constant
five-one constant
six-one constant
seven-one constant

cursor-type

(cursor-type->int cursor-type) procedure
(int->cursor-type integer) procedure
none constant
default constant
arrow constant
busy constant
question constant
edit constant
move constant
resize-north constant
resize-west constant
resize-south constant
resize-east constant
resize-northwest constant
resize-southwest constant
resize-southeast constant
resize-northeast constant
progress constant
precision constant
alt-select constant
unavailable constant

event-type

(event-type->int event-type) procedure
(int->event-type integer) procedure
joystick-axis constant
joystick-button-down constant
joystick-button-up constant
joystick-configuration constant
key-down constant
key-char constant
key-up constant
mouse-axes constant
mouse-button-down constant
mouse-button-up constant
mouse-enter-display constant
mouse-leave-display constant
mouse-warped constant
timer constant
display-expose constant
display-resize constant
display-close constant
display-lost constant
display-found constant
display-switch-in constant
display-switch-out constant
display-orientation constant
audio-stream-fragment constant
audio-stream-finished constant

font-align

(font-align->int font-align) procedure
(int->font-align integer) procedure
left constant
center constant
right constant

file-mode

(file-mode->int file-mode) procedure
(int->file-mode integer) procedure
read constant
write constant
execute constant
hidden constant
file constant
directory constant

gl-variant

(gl-variant->int gl-variant) procedure
(int->gl-variant integer) procedure
opengl constant
opengl-es constant

joystick-flag

(joystick-flag->int joystick-flag) procedure
(int->joystick-flag integer) procedure
digital constant
analog constant

key

(key->int key) procedure
(int->key integer) procedure
a constant
b constant
c constant
d constant
e constant
f constant
g constant
h constant
i constant
j constant
k constant
l constant
m constant
n constant
o constant
p constant
q constant
r constant
s constant
t constant
u constant
v constant
w constant
x constant
y constant
z constant
one constant
two constant
three constant
four constant
five constant
six constant
seven constant
eight constant
nine constant
zero constant
pad-one constant
pad-two constant
pad-three constant
pad-four constant
pad-five constant
pad-six constant
pad-seven constant
pad-eight constant
pad-nine constant
pad-zerp constant
f1 constant
f2 constant
f3 constant
f4 constant
f5 constant
f6 constant
f7 constant
f9 constant
f9 constant
f10 constant
f11 constant
f12 constant
escape constant
tilde constant
minus constant
equals constant
backspace constant
tab constant
openbrace constant
enter constant
semicolon constant
quote constant
backslash constant
backslash2 constant
comma constant
fullstop constant
slash constant
space constant
insert constant
delete constant
home constant
end constant
pgup constant
pgdn constant
left constant
right constant
up constant
down constant
pad-slash constant
pad-asterisk constant
pad-minus constant
pad-plus constant
pad-delete constant
pad-enter constant
printscreen constant
pause constant
abnt-c1 constant
yen constant
kana constant
convert constant
noconvert constant
at constant
circumflex constant
colon2 constant
kanji constant
pad-equals constant
backquote constant
semicolon2 constant
command constant
unknown constant
lshift constant
rshift constant
lctrl constant
rctrl constant
alt constant
altgr constant
lwin constant
rwin constant
menu constant
scrolllock constant
numlock constant
capslock constant

keymod

(keymod->int keymod) procedure
(int->keymod integer) procedure
shift constant
ctrl constant
alt constant
lwin constant
rwin constant
menu constant
altgr constant
command constant
scrolllock constant
numlock constant
capslock constant
inaltseq constant
accent1 constant
accent2 constant
accent3 constant
accent4 constant

locking-flag

(locking-flag->int locking-flag) procedure
(int->locking-flag integer) procedure
read-write constant
read-only constant
write-only constant

mixer-quality

(mixer-quality->int mixer-quality) procedure
(int->mixer-quality integer) procedure
point constant
linear constant

pixel-format

(pixel-format->int pixel-format) procedure
(int->pixel-format integer) procedure
any constant
any-no-alpha constant
any-with-alpha constant
any-15-no-alpha constant
any-16-no-alpha constant
any-16-with-alpha constant
any-24-no-alpha constant
any-32-no-alpha constant
any-32-with-alpha constant
argb-8888 constant
rgba-8888 constant
argb-4444 constant
rgb-888 constant
rgb-565 constant
rgb555 constant
rgba-5551 constant
argb-1555 constant
abgr-8888 constant
xbgr-8888 constant
bgr-888 constant
bgr-565 constant
bgr-555 constant
rgbx-8888 constant
xrgb-8888 constant
abgr-f32 constant
abgr-8888-le constant
rgba-4444 constant

playmode

(playmode->int playmode) procedure
(int->playmode integer) procedure
once constant
loop constant
bidirectional constant

primitive-attribute

(primitive-attribute->int primitive-attribute) procedure
(int->primitive-attribute integer) procedure
position constant
color constant
texture-coordinate constant
texture-pixel-coordinate constant

primitive-type

(primitive-type->int primitive-type) procedure
(int->primitive-type integer) procedure
line-list constant
line-strip constant
line-loop constant
triangle-list constant
triangle-strip constant
point-list constant

primitive-storage

(primitive-storage->int primitive-storage) procedure
(int->primitive-storage integer) procedure
float-2 constant
float-3 constant
short-2 constant

seek-flag

(seek-flag->int seek-flag) procedure
(int->seek-flag integer) procedure
set constant
current constant
end constant

state-flag

(state-flag->int state-flag) procedure
(int->state-flag integer) procedure
new-display-parameters constant
new-bitmap-parameters constant
display constant
target-bitmap constant
blender constant
new-file-interface constant
transform constant
bitmap constant
all constant

system-path

(system-path->int system-path) procedure
(int->system-path integer) procedure
resources-path constant
temp-path constant
user-data-path constant
user-home-path constant
user-settings-path constant
user-documents-path constant
exename-path constant
last-path constant

Constants

joystick-max-axes constant
jostick-max-sticks constant
joystick-max-buttons constant
default-display-adapter constant
eof constant
mouse-max-extra-axis constant
vertex-cache-size constant
primitive-quality constant
audio-pan-none constant
build-version constant
pi constant

Functions

Audio

(make-sample* (blob buffer) (unsigned-integer samples) (unsigned-integer frequency) audio-depth channel-configuration (bool free-buffer)) procedure

Implements al_create_sample.

(make-sample (blob buffer) (unsigned-integer samples) (unsigned-integer frequency) audio-depth channel-configuration (bool free-buffer)) procedure

Implements al_create_sample, with (free-sample!) declared as a finalizer.

(free-sample! sample) procedure

Implements al_destroy_sample.

(make-sample-instance* sample) procedure

Implements al_create_sample_instance.

(make-sample-instance sample) procedure

Implements al_create_sample_instance, with (free-sample-instance!) declared as a finalizer.

(free-sample-instance! sample) procedure

Implements al_destroy_sample_instance.

(sample-frequency sample) procedure

Implements al_get_sample_frequenecy.

(sample-length sample) procedure

Implements al_get_sample_length.

(sample-depth sample) procedure

Implements al_get_sample_depth.

(sample-channels sample) procedure

Implements al_get_sample_channels.

(sample-instance-frequency sample-instance) procedure

Implements al_get_sample_instance_frequency.

(sample-instance-length sample-instance) procedure

Implements al_get_sample_instance_length.

(sample-instance-position sample-instance) procedure

Implements al_get_sample_instance-position.

(sample-instance-speed sample-instance) procedure

Implements al_get_sample_instance_speed.

(sample-instance-gain sample-instance) procedure

Implements al_get_sample_instance_gain.

(sample-instance-pan sample-instance) procedure

Implements al_get_sample_instance_pan.

(sample-instance-time sample-instance) procedure

Implements al_get_sample_instance_time.

(sample-instance-depth sample-instance) procedure

Implements al_get_sample_instance_depth.

(sample-instance-channels sample-instance) procedure

Implements al_get_sample_instance_channels.

(sample-instance-playmode sample-instance) procedure

Implements al_get_sample_instance_playmode.

(sample-instance-playing? sample-instance) procedure

Implements al_get_sample_instance_playing.

(sample-instance-attached? sample-instance) procedure

Implements al_get_sample_instance_attached.

(sample-instance-position-set! sample-instance unsigned-integer) procedure

Implements al_set_sample_instance_position.

(sample-instance-length-set! sample-instance unsigned-integer) procedure

Implements al_set_sample_instance_length.

(sample-instance-speed-set! sample-instance float) procedure

Implements al_set_sample_instance_speed.

(sample-instance-gain-set! sample-instance float) procedure

Implements al_set_sample_instance_gain.

(sample-instance-pan-set! sample-instance float) procedure

Implements al_set_sample_instance_pan.

(sample-instance-playmode-set! sample-instance playmode) procedure

Implements al_set_sample_instance_playmode.

(sample-instance-playing-set! sample-instance bool) procedure

Implements al_set_sample_instance_playing.

(sample-instance-detach! sample-instance) procedure

Implements al_detach_sample_instance.

(sample-instance-sample sample-instance) procedure

Implements al_get_sample.

(sample-instance-sample-set! sample-instance sample) procedure

Implements al_set_sample

(sample-instance-play sample-instance) procedure

Implements al_play_sample_instance.

(sample-instance-stop sample-instance) procedure

Implements al_stop_sample_instance.

(make-audio-stream* (integer buffer-count) (unsigned-integer samples) (unsigned-integer frequency) audio-depth channel-configuration) procedure

Implements al_create_audio_stream.

(make-audio-stream (integer buffer-count) (unsigned-integer samples) (unsigned-integer frequency) audio-depth channel-configuration) procedure

Implements al_create_audio_stream, with (free-audio-stream!) declared as a finalizer.

(free-audio-stream! audio-stream) procedure

Implements al_destroy_audio_stream.

(audio-stram-drain audio-stream) procedure

Implements al_drain_audio_stream.

(audio-stream-frequency audio-stream) procedure

Implements al_get_audio_stream_frequency.

(audio-stream-length audio-stream) procedure

Implements al_get_audio_stream_length.

(audio-stream-fragments audio-stream) procedure

Implements al_get_available_audio_stream_fragments.

(audio-stream-available-fragments audio-stream) procedure

Implements al_get_available_audio_stream_fragments.

(audio-stream-speed audio-stream) procedure

Implements al_get_audio_stream_speed.

(audio-stream-gain audio-stream) procedure

Implements al_get_audio_stream_gain.

(audio-stream-channels audio-stream) procedure

Implements al_get_audio_stream_channels.

(audio-stream-depth audio-stream) procedure

Implements al_get_audio_stream_depth.

(audio-stream-playmode audio-stream) procedure

Implements al_get_audio_stream_playmode.

(audio-stream-playing? audio-stream) procedure

Implements al_get_audio_stream_playing.

(audio-stream-attached? audio-stream) procedure

Implements al_get_audio_stream_attached.

(audio-stream-fragment audio-stream) procedure

Implements al_get_audio_stream_fragment.

(audio-stream-speed-set! audio-stream float) procedure

Implements al_set_audio_stream_speed.

(audio-stream-gain-set! audio-stream float) procedure

Implements al_set_audio_stream_gain.

(audio-stream-pan-set! audio-stream float) procedure

Implements al_set_audio_stream_pan.

(audio-stream-playmode-set! audio-stream playmode) procedure

Implements al_set_audio_stream_playmode.

(audio-stream-playing-set! audio-stream bool) procedure

Implements al_set_audio_stream_playing.

(audio-stream-detach! audio-stream) procedure

Implements al_detach_audio_stream.

(audio-stream-fragment-set! audio-stream c-pointer) procedure

Implements al_set_audio_stream_fragment.

(audio-stream-rewind! audio-stream) procedure

Implements al_rewind_audio_stream.

(audio-stream-seek-seconds! audio-stream double) procedure

Implements al_seek_audio_stream_secs.

(audio-stream-position-seconds audio-stream) procedure

Impements al_get_audio_stream_position_secs.

(audio-stream-length-seconds audio-stream) procedure

Implements al_get_audio_length_secs.

(audio-stream-loop-set! audio-stream (double start-seconds) (double end-seconds)) procedure

Implements al_set_audio_stream_loop_secs.

(audio-stream-event-source audio-stream) procedure

Implements al_get_audio_stream_event_source.

(make-mixer* (unsigned-integer frequency) audio-depth channel-configuration) procedure

Implements al_create_mixer.

(make-mixer (unsigned-integer frequency) audio-depth channel-configuration) procedure

Implements al_create_mixer, with (free-mixer!) declared as a finalizer.

(free-mixer! mixer) procedure

Implements al_destroy_mixer.

(sample-instance-attach-to-mixer! sample-instance mixer) procedure

Implements al_attach_sample_instance_to_mixer.

(audio-stream-attach-to-mixer! audio-stream mixer) procedure

Implements al_attach_audio_stram_to_mixer.

(mixer-attach-to-mixer! mixer mixer) procedure

Implements al_attach_mixer_to_mixer.

(mixer-postprocess-callback-set! mixer (function void (c-pointer unsigned-integer32 c-pointer)) (c-pointer data)) procedure

Implements al_set_mixer_postprocess_callback.

(mixer-frequency mixer) procedure

Implements al_get_mixer_frequency.

(mixer-channels mixer) procedure

Implements al_get_mixer_channels.

(mixer-depth mixer) procedure

Implements al_get_mixer_depth.

(mixer-quality mixer) procedure

Implements al_get_mixer_quality.

(mixer-playing? mixer) procedure

Implements al_get_mixer_playing.

(mixer-attached? mixer) procedure

Implements al_get_mixer_attached.

(mixer-frequency-set! mixer unsigned-integer) procedure

Implements al_set_mixer_frequency.

(mixer-quality-set! mixer mixer-quality) procedure

Implements al_set_mixer_quality.

(mixer-playing-set! mixer bool) procedure

Implements al_set_mixer_playing.

(mixer-detach! mixer) procedure

Implements al_detach_mixer.

(make-voice* (unsigned-integer frequency) audio-depth channel-configuration) procedure

Implements al_create_voice.

(make-voice (unsigned-integer frequency) audio-depth channel-configuration) procedure

Implements al_create_voice, with (free-voice!) declared as a finalizer.

(free-voice! voice) procedure

Implements al_destroy_voice.

(sample-instance-attach-to-voice! sample-instance voice) procedure

Implements al_attach_sample_instance_to_voice.

(audio-stream-attach-to-voice! audio-stram voice) procedure

Implements al_attach_audio_stream_to_voice.

(mixer-attach-to-voice! mixer voice) procedure

Implements al_attach_mixer_to_voice.

(voice-detach! voice) procedure

Implements al_detach_voice.

(voice-frequency voice) procedure

Implements al_get_voice_frequency.

(voice-position voice) procedure

Implements al_get_voice_position.

(voice-channels voice) procedure

Implements al_get_voice_channels.

(voice-depth voice) procedure

Implements al_get_voice_depth.

(voice-playing? voice) procedure

Implements al_get_voice_playing.

(voice-position-set! voice unsigned-integer) procedure

Implements al_set_voice_position.

(voice-playing-set! voice bool) procedure

Implements al_set_voice_playing.

(audio-addon-install) procedure

Implements al_install_audio.

(audio-addon-uninstall) procedure

Implements al_uninstall_audio.

(audio-addon-installed?) procedure

Implements al_is_audio_installed.

(audio-addon-version) procedure

Implements al_get_allegro_audio_version.

(channel-configuration-count channel-configuration) procedure

Implements al_get_channel_count.

(audio-depth-size audio-depth) procedure

Implements al_get_audio_depth_size.

(default-mixer) procedure

Implements al_get_default_mixer.

(default-mixer-set! mixer) procedure

Implements al_set_default_mixer.

(default-mixer-restore!) procedure

Implements al_restore_default_mixer.

(sample-play sample (float gain) (float pan) (float speed) playmode sample-id) procedure

Implements al_play_sample.

The Sample ID is written to the provided sample-id struct.

(sample-stop sample-id) procedure

Implements al_stop_sample.

(reserve-samples integer) procedure

Implements al_reserve_samples.

(stop-all-samples) procedure

Implements al_stop_samples.

(register-sample-loader (string extension) (function sample ((const string)))) procedure

Implements al_register_sample_loader.

(register-sample-saver (string extension) (function bool ((const c-string) sample))) procedure

Implements al_register_sample_saver.

(register-audio-stream-loader (string extension) (function audio-stream ((const string) size_t unsigned-integer32))) procedure

Implements al_register_audio_stream_loader.

(register-sample-file-loader (string extension) (function sample (file))) procedure

Implements al_register_sample_loader_f.

(register-sample-file-saver (string extension) (function bool (file sample))) procedure

Implements al_register_sample_saver_f.

(register-audio-stream-file-loader (string extension) (function audio-stream (file size_t unsigned-integer))) procedure

Implements al_register_audio_stream_loader_f.

(load-sample* string) procedure

Implements al_load_sample.

(load-sample string) procedure

Implements al_load_sample, with (free-sample!) declared as a finalizer.

(load-audio-stream* string (integer buffer-count) (unsigned-integer samples)) procedure

Implements al_load_audio_stream.

(load-audio-stream string (integer buffer-count) (unsigned-integer samples)) procedure

Implements al_load_audio_stream, with (free-audio-stream!) declared as a finalizer.

(load-audio-stream-from-file* file (string identity) (integer buffer-count) (unsigned-integer samples)) procedure

Implements al_load_audio_straem_from_file.

(load-audio-stream-from-file file (string identity) (integer buffer-count) (unsigned-integer samples)) procedure

Implements al_load_audio_straem_from_file, with (free-audio-stream!) declared as a finalizer.

(load-sample-from-file* file (string identity)) procedure

Implements al_load_sample_f.

(load-sample-from-file file (string identity)) procedure

Implements al_load_sample_f, with (free-sample!) declared as a finalizer.

(sample-save-to-file sample file (string identity)) procedure

Implements al_save_sample_f.

(sample-save sample (string filename)) procedure

Implements al_save_sample.

Audio Codec Addon

(acodec-addon-init) procedure

Implements al_init_acodec_addon.

(acodec-addon-version) procedure

Implements al_get_allegro_acodec_version.

Bitmap

(new-bitmap-format-set! pixel-format) procedure

Implements al_set_new_bitmap_format.

(new-bitmap-format) procedure

Implements al_get_new_bitmap_flags.

(new-bitmap-flags-set! bitmap-flag) procedure

Implements al_set_new_bitmap_flags.

(new-bitmap-flags) procedure

Implements al_get_new_bitmap_flags.

(new-bitmap-add-flag bitmap-flag) procedure

Implements al_add_new_bitmap_flag.

(make-bitmap* (integer width) (integer height)) procedure

Implements al_create_bitmap.

(make-bitmap (integer width) (integer height)) procedure

Implements al_create_bitmap, with (free-bitmap!) declared as a finalizer.

(bitmap-draw bitmap (float dx) (float dy) bitmap-flag) procedure

Implements al_draw_bitmap.

(bitmap-draw-region bitmap (float sx) (float sy) (float sw) (float sh) (float dx) (float dy) (integer bitmap-flags)) procedure

Implements al_draw_bitmap_region.

(bitmap-draw-scaled bitmap (float sx) (float sy) (float sw) (float sh) (float dx) (float dy) (float dw) (float dh) (integer bitmap-flags)) procedure

Implements al_draw_scaled_bitmap.

(bitmap-draw-rotated bitmap (float cx) (float cy) (float dx) (float dy) (float angle) (integer bitmap-flags)) procedure

Implements al_draw_rotated_bitmap.

(bitmap-draw-scaled-rotated bitmap (float cx) (float cy) (float dx) (float dy) (float xscale) (float yscale) (float angle) (integer bitmap-flags)) procedure

Implements al_draw_scaled_rotated_bitmap.

(bitmap-draw-tinted (bitmap bmp) (color tint) (float dx) (float dy) (integer bitmap-flags)) procedure

Implements al_draw_tinted_bitmap.

(bitmap-draw-tinted-region (bitmap bmp) (color tint) (float sx) (float sy) (float sw) (float sh) (float dx) (float dy) (integer bitmap-flags)) procedure

Implements al_draw_tinted_bitmap_region.

(bitmap-draw-tinted-scaled (bitmap bmp) (color tint) (float sx) (float sy) (float sw) (float sh) (float dx) (float dy) (float dw) (float dh) (integer flags)) procedure

Implements al_draw_tinted_scale_bitmap.

(bitmap-draw-tinted-rotated (bitmap bmp) (color tint) (float cx) (float cy) (float dx) (float dy) (float angle) (integer flags)) procedure

Implements al_draw_tinted_rotated_bitmap.

(bitmap-draw-tinted-scaled-rotated (bitmap bmp) (color tint) (float cx) (float cy) (float dx) (float dy) (float xscale) (float yscale) (float angle) (integer flags)) procedure

Implements al_draw_tinted_scaled_rotated_bitmap.

(bitmap-lock*! bitmap pixel-format (integer bitmap-flags)) procedure

Implements al_lock_bitmap.

(bitmap-lock-region*! bitmap (integer x) (integer y) (integer width) (integer height) pixel-format (integer bitmap-flags)) procedure

Implements al_lock_bitmap_region.

(bitmap-unlock! bitmap) procedure

Implements al_unlock_bitmap.

(bitmap-lock! bitmap pixel-format (integer bitmap-flags)) procedure

Implements al_lock_bitmap, with (bitmap-unlock!) and (free-locked-region!) declared as finalizers.

(bitmap-lock-region! bitmap (integer x) (integer y) (integer width) (integer height) pixel-format (integer bitmap-flags)) procedure

Implements al_lock_bitmap_region, with (bitmap-unlock!) and (free-locked-region!) declared as finalizers.

(bitmap-pixel! (bitmap bmp) (int x) (int y) (color c)) procedure

Sets the provided color struct to the color value at the given coordinates.

(bitmap-pixel* (bitmap bmp) (int x) (int y)) procedure

Returns a new color struct of the color value at the given coordinates.

(bitmap-pixel (bitmap bmp) (int x) (int y)) procedure

Returns a new color struct of the color value at the given coordinates, with (free-color!) declared as a finalizer.

(bitmap-width bitmap) procedure

Implements al_get_bitmap_width.

(bitmap-height bitmap) procedure

Implements al_get_bitmap_height.

(bitmap-format bitmap) procedure

Implements al_get_bitmap_format.

(bitmap-flags bitmap) procedure

Implements al_get_bitmap_flags.

(bitmap-mask->alpha! bitmap color) procedure

Implements al_convert_mask_to_alpha.

(bitmap-clone* bitmap) procedure

Implements al_clone_bitmap.

(bitmap-clone bitmap) procedure

Implements al_clone_bitmap, with (free-bitmap!) declared as a finalizer.

(bitmap-locked? bitmap) procedure

Implements al_is_bitmap_locked.

(bitmap-put-pixel! bitmap (integer x) (integer y) (color c)) procedure

Implements _al_put_pixel.

(make-sub-bitmap* bitmap (integer x) (integer y) (integer width) (integer height)) procedure

Implements al_create_sub_bitmap.

(make-sub-bitmap bitmap (integer x) (integer y) (integer width) (integer height)) procedure

Implements al_create_sub_bitmap, with (free-bitmap!) declared as a finalizer.

(sub-bitmap? bitmap) procedure

Implements al_is_sub_bitmap.

(put-pixel (integer x) (integer y) (color c)) procedure

Implements al_put_pixel.

(put-blended-pixel (integer x) (integer y) (color c)) procedure

Implements al_put_blended_pixel.

(pixel-size pixel-format) procedure

Implements al_get_pixel_size.

(color-map-rgb! (color c) (unsigned-byte r) (unsigned-byte g) (unsigned-byte b)) procedure

Maps rgb values onto the provided color struct, implementing al_map_rgb.

(color-map-rgba! (color c) (unsigned-byte r) (unsigned-byte g) (unsigned-byte b) (unsigned-byte a)) procedure

Maps rgba values onto the provided color struct, implementing al_map_rgba.

(color-map-rgb-float! (color c) (unsigned-byte r) (unsigned-byte g) (unsigned-byte b)) procedure

Maps rgb values onto the provided color struct, implementing al_map_rgb_f.

(color-map-rgba-float! (color c) (unsigned-byte r) (unsigned-byte g) (unsigned-byte b) (unsigned-byte a)) procedure

Maps rgba values onto the provided color struct, implementing al_map_rgba_f.

(map-rgb* r g b) procedure

Returns a new color struct mapped to the given rgb values.

(map-rgb r g b) procedure

Returns a new color struct mapped to the given rgb values, with (free-color!) declared as a finalizer.

(map-rgba* r g b a) procedure

Prodcues a new color struct mapped to the given rgba values.

(map-rgba r g b a) procedure

Returns a new color struct mapped to the given rgba values, with (free-color!) declared as a finalizer.

(map-rgb-float* r g b) procedure

Returns a new color struct mapped to the given rgb values.

(map-rgb-float r g b) procedure

Returns a new color struct mapped to the given rgb values, with (free-color!) declared as a finalizer.

(map-rgba-float* r g b a) procedure

Returns a new color struct mapped to the given rgba values.

(map-rgba-float r g b a) procedure

Returns a new color struct mapped to the given rgba values, with (free-color!) declared as a finalizer.

(color-unmap-rgb color) procedure

Returns a 3-element list of the rgb values representing a given color struct.

(color-unmap-rgba color) procedure

Returns a 4-element list of the rgba values representing a given color struct.

(color-unmap-rgb-float color) procedure

Returns a 3-element list of the rgb values representing a given color struct.

(color-unmap-rgba-float color) procedure

Returns a 4-element list of the rgb values representing a given color struct.

(pixel-format-bits pixel-format) procedure

Implements al_get_pixel_format_bits.

(clipping-rectangle) procedure

Returns a 4-element list of the x, y, width and height values of the current clipping rectangle.

(clippingle-rectangle-set! (integer x) (integer y) (integer width) (integer height)) procedure

Sets the current clipping rectangle.

(blender) procedure

Returns a 3-element list of the op, source and destination of the current blender.

(blender-set! (blend-operation op) (integer source) (integer destination)) procedure

Implements al_set_blender.

(separate-blender) procedure

Returns a 6-element list of the op, source, destination, alpha op, alpha source, and alpha destination.

(separate-blender-set! (blend-operation op) (integer src) (integer destination) (integer alpha-op) (integer alpha-source) (integer alpha-destination)) procedure

Implements al_set_separate_blender.

Bitmap I/O

(register-bitmap-loader (string extension) (function bitmap ((const c-string)))) procedure

Implements al_register_bitmap_loader.

(register-bitmap-file-loader (string extension) (function bitmap (file))) procedure

Implements al_register_bitmap_loader_f.

(register-bitmap-saver (string extension) ((function bool ((const c-string) bitmap)) saver)) procedure

Implements al_register_bitmap_saver.

(register-bitmap-file-saver (string extension) ((function bool (file bitmap)) saver)) procedure

Implements al_register_bitmap_saver_f.

(load-bitmap* string) procedure

Implements al_load_bitmap.

(load-bitmap string) procedure

Implements al_load_bitmap, with (free-bitmap!) declared as a finalizer.

(load-bitmap-from-file* file string) procedure

Implements al_load_bitmap_f.

(load-bitmap-from-file file string) procedure

Implements al_load_bitmap_f, with (free-bitmap!) declared as a finalizer.

(bitmap-save bitmap string) procedure

Implements al_save_bitmap.

(bitmap-save-to-file bitmap file string) procedure

Implements al_save_bitmap_f.

Color

(color-addon-version) procedure

Implements al_get_allegro_color_version.

(hsv->rgb (float h) (float s) (float v)) procedure

Returns a 3-element list consisting of the rgb elements.

(rgb->hsl (float red) (float green) (float blue)) procedure

Returns a 3-element list consisting of the hsl elements.

(hsl->rgb (float hue) (float saturation) (float lightness)) procedure

Returns a 3-element list consisting of the rgb elements.

(name->rgb string) procedure

Returns a 3-element list consisting of the rgb elements.

(rgb->name (float red) (float green) (float blue)) procedure

Returns a string representation of the rgb elements.

(cmyk->rgb (float cyan) (float magenta) (float yellow) (float key)) procedure

Returns a 3-element list consisting of the rgb elements.

(rgb->cmyk (float red) (float green) (float blue)) procedure

Returns a 4-element list consisting of the cmyk elements.

(yuv->rgb (float y) (float u) (float v)) procedure

Returns a 3-element list consisting of the rgb elements.

(rgb->yuv (float red) (float green) (float blue)) procedure

Returns a 3-element list consisting of the yuv elements.

(rgb->html (float red) (float green) (float blue)) procedure

Returns a string consisting of the html representation.

(html->rgb string) procedure

Returns a 3-element list consisting of the rgb elements.

(make-color-rgb* (integer r) (integer g) (integer b)) procedure

Creates a color struct from rgb elements.

(make-color-rgb (integer r) (integer g) (integer b)) procedure

Creates a color struct from rgb elements, with (free-color!) declared as a finalizer.

(make-color-rgba*(integer r) (integer g) (integer b) (integer a)) procedure

Creates a color struct from rgba elements.

(make-color-rgba (integer r) (integer g) (integer b) (integer a)) procedure

Creates a color struct from rgba elements, with (free-color!) declared as a finalizer.

(make-color-yuv* (integer y) (integer u) (integer v)) procedure

Creates a color struct from yuv elements.

(make-color-yuv (integer y) (integer u) (integer v)) procedure

Creates a color struct from yuv elements, with (free-color!) declared as a finalizer.

(make-color-cmyk* (integer c) (integer m) (integer y) (integer k)) procedure

Creates a color struct from cmyk elements.

(make-color-cmyk (integer c) (integer m) (integer y) (integer k)) procedure

Creates a color struct from cmyk elements, with (free-color!) declared as a finalizer.

(make-color-hsl*(integer h) (integer s) (integer l)) procedure

Creates a color struct from hsl elements.

(make-color-hsl (integer h) (integer s) (integer l)) procedure

Creates a color struct from hsl elements, with (free-color!) declared as a finalizer.

(make-color-hsv*(integer h) (integer s) (integer v)) procedure

Creates a color struct from hsv elements.

(make-color-hsv (integer h) (integer s) (integer v)) procedure

Creates a color struct from hsv elements, with (free-color!) declared as a finalizer.

(make-color-name* string) procedure

Creates a color struct from a string name.

(make-color-name string) procedure

Creates a color struct from a string name, with (free-color!) declared as a finalizer.

(make-color-html* string) procedure

Creates a color struct from a html representation.

(make-color-html string) procedure

Creates a color struct from a html representation, with (free-color!) declared as a finalizer.

(color-yuv! color (float y) (float u) (float v)) procedure

Maps yuv elements to a color struct.

(color-cmyk! color (float c) (float m) (float y) (float k)) procedure

Maps cmyk elements to a color struct.

(color-hsl! color (float h) (float s) (float l)) procedure

Maps hsl elements to a color struct.

(color-hsv! color (float h) (float s) (float v)) procedure

Maps hsv elements to a color struct.

(color-name! color string) procedure

Maps a color name to a color struct.

(color-html! color string) procedure

Maps a html representation to a color struct.

Config Files

(make-config*) procedure

Implements al_create_config.

(make-config) procedure

Implements al_create_config, with (free-config!) declared as a finalizer.

(free-config! config) procedure

Implements al_destroy_config.

(config-section-add! config string) procedure

Implements al_add_config_section.

(config-value-set! config (string section) (string key) (string value)) procedure

Implements al_set_config_value.

(config-comment-add! config (string section) (string comment)) procedure

Implements al_add_config_comment.

(config-value config (string section) (string key)) procedure

Implements al_get_config_value.

(load-config* string) procedure

Implements al_load_config_file.

(load-config string) procedure

Implements al_load_config_file, with (free-config!) decalred as a finalizer.

(load-config-from-file* file) procedure

Implements al_load_config_file_f.

(load-config-from-file file) procedure

Implements al_load_config_file_f, with (free-config!) declared as a finalizer.

(config-save config string) procedure

Implements al_save_config_file.

(config-save-to-file config file) procedure

Implements al_save_config_file_f.

(config-merge! config config) procedure

Implements al_merge_config_into.

(config-merge config config) procedure

Implements al_merge_config.

(config-sections config) procedure

Creates an iterator that covers the sections of the given config.

Returns values of the form (list config-section promise).

(force) the promise to get the next section.

Needs testing!

(config-entries config config-section) procedure

Creates an iterator that covers the entries of the given config and config-section.

Returns values of the form (list config-entry promise).

(force) the promise to get the next entry.

Needs testing!

Debugging

(trace-prefix (string channel) (int level) (string file) (int line) (string function)) procedure

Implements _al_trace_prefix.

(trace-level-debug) procedure

Implements ALLEGRO_DEBUG.

(trace-level-info) procedure

Implements ALLEGRO_INFO.

(trace-level-warn) procedure

Implements ALLEGRO_WARN.

(trace-level-error) procedure

Implements ALLEGRO_ERROR.

(debug-assert bool) procedure

Implements ALLEGRO_ASSERT.

Display

(new-display-refresh-rate) procedure

Implements al_get_new_display_refresh_rate.

(new-display-refresh-rate-set! integer) procedure

Implements al_set_new_display_refresh_rate.

(new-display-flags) procedure

Implements al_get_new_display_flags.

(new-display-flags-set! integer) procedure

Implements al_set_new_display_flags.

(new-display-adapter) procedure

Implements al_get_new_display_adapter.

(new-display-adapter-set! integer) procedure

Implements al_set_new_display_adpater.

(new-display-window-position) procedure

Returns a 2-element list consisting of the new display coordinates.

(new-display-window-position-set! (integer x) (integer y)) procedure

Sets the a new display's window position.

(new-display-option-value display-option) procedure

Retrieves the value for a particular display-option for newly created displays.

(new-display-option-importance display-option) procedure

Retrieves the importance for a particular display-option for newly created dispalys.

(new-display-option-set! display-option (integer value) display-option-importance) procedure

Implements al_set_new_display_option.

(new-display-reset-options) procedure

Implements al_reset_new_display_options.

(make-display* (integer width) (integer height)) procedure

Implements al_create_display.

(make-display (integer width) (integer height)) procedure

Implements al_create_display, with (free-display!) declared as a finalizer.

(make-display/mode* display-mode (integer adapter) (integer flags)) procedure

Creates a new display, taking the refresh rate, width and height from a display-mode struct.

(make-display/mode display-mode (integer adapter) (integer flags)) procedure

Creates a new display, taking the refresh rate, width and height from a display-mode struct, with (free-display-mode!) declared as a finalizer.

(free-display! display) procedure

Implements al_destroy_display.

(current-display) procedure

Implements al_get_current_display.

(display-mode-count) procedure

Implements al_get_num_display_modes.

(display-mode-init! display-mode (integer index)) procedure

Implements al_get_display_mode, returning #f if unsuccessful.

(update-display-region! (integer x) (integer y) (integer width) (integer height)) procedure

Implements al_update_display_region.

(compatible-bitmap? bitmap) procedure

Implements al_is_compatible_bitmap.

(wait-for-vsync) procedure

Implements al_wait_for_vsync.

(draw-pixel (float x) (floay y) color) procedure

Implements al_draw_pixel.

(video-adapter-count) procedure

Implements al_get_num_video_adapters.

(monitor-init! monitor (integer adapter)) procedure

Implements al_get_monitor_info.

(display-option display display-option) procedure

Implements al_get_display_option.

(display-hold-bitmap-drawing! bool) setter

Implements al_hold_bitmap_drawing.

(display-bitmap-drawing-held?) procedure

Implements al_is_bitmap_drawing_help.

(display-window-title-set! display string) procedure

Implements al_set_window_title.

(display-width display) procedure

Implements al_get_display_width.

(display-height display) procedure

Implements al_get_display_height.

(display-format display) procedure

Implements al_get_display_format.

(display-refresh-rate display) procedure

Implements al_get_display_refresh_rate.

(display-flags display) procedure

Implements al_get_display_flags.

(display-toggle-flag! display display-flag bool) procedure

Implements al_toggle_display_flag.

(display-backbuffer display) procedure

Implements al_get_backbuffer.

(display-acknowledge-resize display) procedure

Implements al_acknowledge_resize.

(display-resize! display (integer width) (integer height)) procedure

Implements al_resize_display.

(display-event-source display) procedure

Implements al_get_display_event_source.

(display-iconset! display bitmap) procedure

Implements al_set_display_icon.

(clear-to-color color) procedure

Implements al_clear_to_color.

(target-bitmap) procedure

Implements al_get_target_bitmap.

(target-bitmap-set! bitmap) procedure

Implements al_set_target_bitmap.

(target-backbuffer-set! display) procedure

Implements al_set_target_backbuffer.

(flip-display) procedure

Implements al_flip_display.

Direct3D

(d3d-non-pow2-texture-support?) procedure

Implements al_have_d3d_non_pow2_texture_support.

(d3d-non-square-texture-support?) procedure

Implements al_have_d3d_non_square_texture_support.

Bitmap Specific

(bitmap-d3d-system-texture bitmap) procedure

Implements al_get_d3d_system_texture.

(bitmap-d3d-video-texture bitmap) procedure

Implements al_get_d3d_video_texture.

(bitmap-d3d-texture-position bitmap) procedure

Returns a 2-element list consisting of a u, v pair.

Display Specific

(display-d3d-device-lost? display) procedure

Implements al_is_d3d_device_lost.

(display-d3d-device display) procedure

Implements al_get_d3d_device.

Events

(user-event-type? integer) procedure

Implements ALLEGRO_EVENT_TYPE_IS_USER.

(make-event-type (integer a) (integer b) (integer c) (integer d)) procedure

Implements ALLEGRO_GET_EVENT_TYPE.

(event-type event) procedure

Returns the type of a given event struct.

(event->any-event event) procedure

Converts an event to an any-event.

(event->display-event event) procedure

Converts an event to a display-event.

(event->joystick-event event) procedure

Converts an event to a joystick-event.

(event->keyboard-event event) procedure

Converts an event to a keyboard-event.

(event->mouse-event event) procedure

Converts an event to a mouse-event.

(event->timer-event event) procedure

Converts an event to a timer-event.

(event->user-event event) procedure

Converts an event to a user-event.

(user-event-source-init! event-source) procedure

Implements al_init_user_event_source.

(free-user-event-source! event-source) procedure

Implements al_destroy_user_event_source.

(emit-user-event! event-source event (function void (user-event))) procedure

Implements al_emit_user_event.

(user-event-unref! user-event) procedure

Implements al_unref_user_event.

(event-source-data event-source) procedure

Implements al_get_event_source_data.

(event-source-data-set! event-source integer) procedure

Implements al_set_event_source_data.

(make-event-queue*) procedure

Implements al_create_event_queue.

(make-event-queue) procedure

Implements al_create_event_queue, with (free-event-queue!) declared as a finalizer.

(free-event-queue! event-queue) procedure

Implements al_destroy_event_queue.

(event-queue-register-source! event-queue event-source) procedure

Implements al_register_event_source.

(event-queue-unregister-source! event-queue event-source) procedure

Implements al_unregister_event_source.

(event-queue-empty? event-queue) procedure

Implements al_is_event_queue_empty.

(event-queue-next! event-queue event) procedure

Implements al_get_next_event.

(event-queue-peek! event-queue event) procedure

Implements al_peek_next_event.

(event-queue-drop-next! event-queue) procedure

Implements al_drop_next_event_queue.

(event-queue-flush! event-queue) procedure

Implements al_drop_next_event.

(event-queue-wait! event-queue event) procedure

Implements al_wait_for_event.

(event-queue-timed-wait! event-queue event float) procedure

Implements al_wait_for_event_timed.

(event-queue-wait-until! event-queue event timeout) procedure

Implements al_wait_for_event_until.

Errors

(error-number) procedure

Implements al_get_errno.

(error-number-set!) procedure

Implements al_set_errno.

File Operations

(make-temp-file* (string template) ((c-pointer path) out_path)) procedure

Implements al_make_temp_file.

(make-temp-file (string template) ((c-pointer path) out_path)) procedure

Implements al_make_temp_file, with (free&close-file!) declared as a finalizer.

(file-open* (string path) (string mode)) procedure

Implements al_fopen.

(file-open (string path) (string mode)) procedure

Implements al_fopen, with (free&close-file!) declared as a finalizer.

(file-open-fd* (integer file-descriptor) (string mode)) procedure

Implements al_fopen_fd.

(file-open-fd (integer file-descriptor) (string mode)) procedure

Implements al_fopen_fd, with (free&close-file!) declared as a finalizer.

(free&close-file! file) procedure

Closes a file with (file-close!), then uses (free!) to clear the file struct from memory.

(file-close! file) procedure

Implements al_fclose.

(file-read! file blob (integer size)) procedure

Implements al_fread.

(file-write! file blob (integer size)) procedure

Implements al_fwrite.

(file-tell file) procedure

Implements al_ftell.

(file-seek! file (integer offset) (integer whence)) procedure

Implements al_fseek.

(file-eof? file) procedure

Implements al_feof.

(file-error? file) procedure

Implements al_ferror.

(file-clear-error! file) procedure

Implements al_fclearerr.

(file-unget-chars! file (integer count)) procedure

Implements al_fungetc.

(file-size file) procedure

Implements al_fsize.

(file-get-char! file) procedure

Implements al_fgetc.

(file-put-char! file (integer character)) procedure

Implements al_fputc.

(file-read-16le! file) procedure

Implements al_fread16le.

(file-read-16be! file) procedure

Implements al_fread16be.

(file-write-16le! file integer) procedure

Implements al_fwrite16le.

(file-read-32le! file) procedure

Implements al_fread32le.

(file-read-32be! file) procedure

Implements al_fread32be.

(file-write-32le! file integer) procedure

Implements al_fwrite32le.

(file-write-32be! file integer) procedure

Implements al_fwrite32be.

(file-get-string! file blob (integer max)) procedure

Implements al_fgets.

(file-get-utf-string*! file) procedure

Implements al_get_ustr.

(file-get-utf-string! file) procedure

Implements al_get_ustr, with (free-utf-string!) declared as a finalizer.

(file-put-string! file string) procedure

Implements al_fputs.

(file-userdata file) procedure

Implements al_get_file_userdata.

(new-file-interface-set! file-interface) procedure

Implements al_set_new_file_interface.

(file-interface-open* file-interface (string path) (string mode)) procedure

Implements al_fopen_interface.

(file-interface-open file-interface (string path) (string mode)) procedure

Implements al_fopen_interface, with (free&close-file!) declared as a finalizer.

(make-file-handle* file-interface (c-pointer userdata)) procedure

Implements al_create_file_handle.

(make-file-handle file-interface (c-pointer userdata)) procedure

Implements al_create_file_handle, with (free&close-file!) decalred as a finalizer.

File System Hooks

(make-fs-entry* string) procedure

Implements al_create_fs_entry.

(make-fs-entry string) procedure

Implements al_create_fs_entry, with (free-fs-entry!) declared as a finalizer.

(free-fs-entry! fs-entry) procedure

Implements al_destroy_fs_entry.

(fs-entry-name fs-entry) procedure

Implements al_get_fs_entry_name.

(fs-entry-update! fs-entry) procedure

Implements al_update_fs_entry.

(fs-entry-mode fs-entry) procedure

Implements al_get_fs_entry_mode.

(fs-entry-atime fs-entry) procedure

Implements al_get_fs_entry_atime.

(fs-entry-mtime fs-entry) procedure

Implements al_get_fs_entry_mtime.

(fs-entry-ctime fs-entry) procedure

Implements al_get_fs_entry_ctime.

(fs-entry-size fs-entry) procedure

Implements al_get_fs_entry_size.

(fs-entry-exists? fs-entry) procedure

Implements al_fs_entry_exists.

(fs-entry-remove! fs-entry) procedure

Implements al_remove_fs_entry.

(fs-entry-open fs-enty string) procedure

Implements al_open_fs_entry.

(fs-entry-directory-open! fs-entry) procedure

Implements al_open_directory.

<procedure>(fs-entry-directory-read fs-entry)<procedure>

Implements al_read_directory.

(fs-entry-directory-close! fs-entry) procedure

Implements al_close_directory.

(current-directory) procedure

Implements al_get_current_directory.

(change-directory string) procedure

Implements al_change_directory.

(make-directory string) procedure

Implements al_make_directory.

(filename-exists? string) procedure

Implements al_filename_exists.

(filename-remove! string) procedure

Implements al_remove_filename.

(new-file-interface) procedure

Implements al_get_new_file_interface.

(current-fs-interface) procedure

Implements al_get_fs_interface.

(current-fs-interface-set!) setter

Implements al_set_fs_interface.

(standard-fs-interface-set!) setter

Implements al_set_standard_fs_interface.

Fixed Math

(fix-to-rad integer) procedure

Implements al_fixtorad_r.

(rad-to-fix integer) procedure

Implements al_radtofix_r.

(fixed-sqrt integer) procedure

Implements al_fixsqrt.

(fixed-hypot integer) procedure

Implements al_fixhypot.

(fixed-atan integer) procedure

Implements al_fixatan.

(fixed-atan2 integer) procedure

Implements al_fixatan2.

(fixed-cos integer) procedure

Wraps _al_fix_cos_tbl.

(fixed-tan integer) procedure

Wraps _al_fix_tan_tbl.

(fixed-acos integer) procedure

Wraps _al_fix_acos_tbl.

Fonts

(register-font-loader (string extension) (function font (string integer integer))) procedure

Implements al_register_font_loader.

(load-bitmap-font* string) procedure

Implements al_load_bitmap_font.

(load-bitmap-font string) procedure

Implements al_load_bitmap_font, with (free-font!) declared as a finalizer.

(load-font* string (integer size) (integer flags)) procedure

Implements al_load_font.

(load-font string (integer size) (integer flags)) procedure

Implements al_load_font, with (free-font!) declared as a finalizer.

(make-font-from-bitmap* bitmap (integer n) (s32vector ranges)) procedure

Implements al_grab_font_from_bitmap.

(make-font-from-bitmap bitmap (integer n) (s32vector ranges)) procedure

Implements al_grab_font_from_bitmap, with (free-font!) declared as a finalizer.

(free-font! font) procedure

Implements al_destroy_font.

(font-draw-utf (font f) (color c) (float x) (float y) (font-align flags) (utf-string ustr)) procedure

Implements al_draw_ustr.

(font-draw-string (font f) (color c) (float x) (float y) (font-align flags) (string text)) procedure

Implements al_draw_text.

(font-draw-justified-string (font f) (color c) (float x1) (float x2) (float y) (float diff) (font-align flags) (c-string text)) procedure

Implements al_draw_justified_text.

(font-draw-justified-utf-string (font f) (color c) (float x1) (float x2) (float y) (float diff) (font-align flags) (utf-string text)) procedure

Implements al_draw_justified_ustr.

(font-width font string) procedure

Implements al_get_text_width.

(font-utf-width font utf-string) procedure

Implements al_get_ustr_width.

(font-line-height font) procedure

Implements al_get_font_line_height.

(font-ascent font) procedure

Implements al_get_font_ascent.

(font-descent font) procedure

Implements al_get_font_descent.

(font-utf-dimensions (font f) (utf-string text)) procedure

Returns a 4-element list consisting of the bounding box elements: x, y, width and height.

(font-dimensions (font f) (string text)) procedure

Returns a 4-element list consisting of the bounding box elements: x, y, width and height.

(font-addon-install) procedure

Implements al_init_font_addon.

(font-addon-uninstall) procedure

Implements al_shutdown_font_addon.

(font-addon-version) procedure

Implements al_get_allegro_font_version.

Image Formats

(image-addon-install) procedure

Implements al_init_image_addon.

(image-addon-uninstall) procedure

Implements al_shutdown_image_addon.

(image-addon-version) procedure

Implements al_get_allegro_image_version.

Joystick

(joystick-addon-install) procedure

Implements al_install_joystick.

(joystick-addon-uninstall) procedure

Implements al_uninstall_joystick.

(joystick-addon-installed?) procedure

Implements al_is_joystick_installed.

(joystick-addon-reconfigure) procedure

Implements al_reconfigure_joysticks.

(joystick-event-source) procedure

Implements al_get_joystick_event_source.

(joystick-count) procedure

Implements al_get_num_joysticks.

(joystick-ref integer) procedure

Implements al_get_joystick.

(joystick-release joystick) procedure

Implements al_release_joystick.

(joystick-active? joystick) procedure

Implements al_get_joystick_active.

(joystick-name joystick) procedure

Implements al_get_joystick_name.

(joystick-axes-count joystick (integer stick)) procedure

Implements al_get_joystick_num_axes.

(joystick-button-count joystick) procedure

Implements al_get_joystick_num_buttons.

(joystick-button-name joystick (integer button)) procedure

Implements al_get_joystick_button_name.

(joystick-state-init! joystick-state joystick) procedure

Implements al_get_joystick_state.

(joystick-state-axis joystick-state (integer stick) (integer axis)) procedure

Retrieves desired axis value for a particular stick; #f if either stick or axis is out of available bounds.

Keyboard

(keyboard-addon-installed?) procedure

Implements al_is_keyboard_installed.

(keyboard-addon-install) procedure

Implements al_install_keyboard.

(keyboard-addon-uninstall) procedure

Implements al_uninstall_keyboard.

(keycode->string key) procedure

Implements al_keycode_to_name. Not strictly necessary, since the enums are symbols which can easily be converted to strings.

(keyboard-event-source) procedure

Implements al_get_keyboard_event_source.

(keyboard-led-set! integer) procedure

Implements al_set_keyboard_leds.

(keyboard-state-init! keyboard-state) procedure

Implements al_get_keyboard_state.

(keyboard-state-key-down? keyboard-state key) procedure

Implements al_key_down.

(keyboard-three-finger-flag?) constant

Wraps _al_three_finger_flag.

(keyboard-led-flag?) constant

Wraps _al_key_led_flag.

Memory

(memory-interface-set! memory-interface) procedure

Implements al_set_memory_interface.

(malloc* integer) procedure

Implements al_malloc.

(malloc integer) procedure

Implements al_malloc, with (free!) declared as a finalizer.

(free! ptr) procedure

Implements al_free.

(realloc* ptr integer) procedure

Implements al_realloc.

(realloc ptr integer) procedure

Implements al_realloc, with (free!) declared as a finalizer.

(calloc* integer integer) procedure

Implements al_calloc.

(calloc integer integer) procedure

Implements al_calloc, with (free!) declared as a finalizer.

(malloc/context* (int size) (int line) (string file) (string function)) procedure

Implements al_malloc_with_context.

(malloc/context (int size) (int line) (string file) (string function)) procedure

Implements al_malloc_with_context, with (free/context!) declared as a finalizer.

(free/context! ptr (int line) (string file) (string function)) procedure

Implements al_free_with_context.

(realloc/context* ptr (int size) (int line) (string file) (string function)) procedure

Implements al_realloc_with_context.

(realloc/context ptr (int size) (int line) (string file) (string function)) procedure

Implements al_realloc_with_context, with (free/context!) declared as a finalizer.

(calloc/context* (int count) (int size) (int line) (string file) (string function)) procedure

Implements al_calloc_with_context.

(calloc/context (int count) (int size) (int line) (string file) (string function)) procedure

Implements al_calloc_with_context, with (free/context!) declared as a finalizer.

Memory Files

(open-memfile* (c-pointer mem) (unsigned-integer size) (string mode)) procedure

Implements al_open_memfile.

(open-memfile (c-pointer mem) (unsigned-integer size) (string mode)) procedure

Implements al_open_memfile, with (free&close-file!) declared as a finalizer.

(memfile-version) procedure

Implements al_get_allegro_memfile_version.

Miscellaneous

(combine-flags converter flags) procedure

For combining enum flags together, ie:

(combine-flags display-flag->int '(windowed opengl resizable generate-expose-events))
(make-id a b c d) procedure

Implements AL_ID.

(run-main argc argv (function integer (integer (c-pointer c-string)))) procedure

Implements al_run_main.

(init-everything) procedure

Initializes all sub-systems.

(init-symbol s) procedure

Initializes sub-systems by symbol-name. Valid symbols are: allegro, audio, font, image, joystick, keyboard, mouse, primitives, and ttf.

(init-this arg) procedure

Initializes sub-systems either by a single symbol or by a list of symbols. Ie:

(init-this (list 'allegro 'audio 'font 'image 'joystick 'keyboard 'mouse 'primitives 'ttf))
(uninstall-everything) procedure

Attempts to uninitialize all loaded sub-systems.

(uninstall-this arg) procedure

Attempts to uninitialize sub-systems by either a single symbol or by a list of symbols. Ie:

(uninstall-this (list 'system 'audio 'font 'image 'joystick 'keyboard 'mouse 'primitives 'ttf))

Mouse

(mouse-addon-installed?) procedure

Implements al_is_mouse_installed.

(mouse-addon-install) procedure

Implements al_install_mouse.

(mouse-addon-uninstall) procedure

Implements al_uninstall_mouse.

(mouse-button-count) procedure

Implements al_get_mouse_num_buttons.

(mouse-axes-count) procedure

Implements al_get_mouse_num_axes.

(mouse-xy-set! display (integer x) (integer y)) procedure

Implements al_set_mouse_xy.

(mouse-z-set! display integer) procedure

Implements al_set_mouse_z.

(mouse-w-set! display integer) procedure

Implements al_set_mouse_w.

(mouse-event-source) procedure

Implements al_get_mouse_event_source.

(mouse-state-init! mouse-state) procedure

Implements al_get_mouse_state.

(mouse-state-button-down mouse-state (integer button)) procedure

Implements al_mouse_button_down.

(mouse-state-axis mouse-state (integer axis)) procedure

Implements al_get_mouse_state_axis.

(mouse-axis-set! (integer axis) (integer value)) procedure

Implements al_set_mouse_axis.

(make-cursor* (bitmap sprite) (integer xfocus) (integer yfocus)) procedure

Implements al_create_mouse_cursor.

(make-cursor (bitmap sprite) (integer xfocus) (integer yfocus)) procedure

Implements al_create_mouse_cursor, with (free-cursor!) declared as a finalizer.

(free-cursor! cursor) procedure

Implements al_destroy_mouse_cursor.

(mouse-cursor-position) procedure

Returns a 2-element list consisting of the x and y position of the mouse cursor.

(mouse-ungrab) procedure

Implements al_ungrab_mouse.

(display-grab-mouse! display) procedure

Implements al_grab_mouse.

(display-cursor-set! display mouse-cursor) procedure

Implements al_set_mouse_cursor.

(display-hide-cursor! display) procedure

Implements al_hide_mouse_cursor.

(display-system-mouse-cursor-set! display cursor-type) procedure

Implements al_set_system_mouse_cursor.

OpenGL

(opengl-addon-version) procedure

Implements al_get_opengl_version.

(opengl-extension-exists? string) procedure

Implements al_have_opengl_extension.

(opengl-proc-address string) procedure

Implements al_get_opengl_proc_address.

(opengl-texture bitmap) procedure

Implements al_get_opengl_texture.

(opengl-remove-fbo! bitmap) procedure

Implements al_remove_opengl_fbo.

(opengl-fbo bitmap) procedure

Implements al_get_opengl_fbo.

(opengl-texture-size bitmap) procedure

Returns a 2-element list of the width and height of the opengl texture for the given bitmap.

(opengl-texture-position bitmap) procedure

Returns a 2-element list of the u,v position of the opengl texture for the given bitmap.

(opengl-context-set! display) procedure

Implements al_set_current_opengl_context.

(opengl-variant) procedure

Implements al_get_opengl_variant.

Paths

(make-path* string) procedure

Implements al_create_path.

(make-path string) procedure

Implements al_create_path, with (free-path!) declared as a finalizer.

(make-path-for-directory* string) procedure

Implements al_create_path_for_directory.

(make-path-for-directory string) procedure

Implements al_create_path_for_directory, with (free-path!) declared as a finalizer.

(free-path! path) procedure

Implements al_destroy_path.

(path->string path (char separator)) procedure

Implements al_path_cstr.

(path-component-count path) procedure

Implements al_get_path_num_components.

(path-component path integer) procedure

Implements al_get_path_compoenent.

(path-component-set! path integer string) setter

Implements al_replace_path_component.

(path-component-remove! path integer) procedure

Implements al_remove_path_component.

(path-component-insert! path integer string) procedure

Implements al_insert_path_component.

(path-clone path) procedure

Implements al_clone_path.

(path-tail path) procedure

Implements al_get_path_tail.

(path-drop-tail! path) procedure

Implements al_drop_path_tail.

(path-append! path string) procedure

Implements al_append_path_component.

(path-join! path path) procedure

Implements al_join_paths.

(path-rebase! path path) procedure

Implements al_rebase_path.

(path-drive path) procedure

Implements al_get_path_drive.

(path-drive-set! path string) setter

Implements al_set_path_drive.

(path-filename path) procedure

Implements al_get_path_filename.

(path-filename-set! path string) setter

Implements al_set_path_filename.

(path-extension path) procedure

Implements al_get_path_extension.

(path-extension-set! path string) setter

Implements al_set_path_extension.

(path-basename path) procedure

Implements al_get_path_basename.

(path-make-canonical! path) procedure

Implements al_make_path_canonical.

PhysicsFS

See also: the physfs egg.

(enable-physfs-file-interface) procedure

Implements al_set_physfs_file_interface.

(physfs-addon-version) procedure

Implements al_get_allegro_physfs_version.

Primitives

(primitives-addon-version) procedure

Implements al_get_allegro_primitives_version.

(primitives-addon-install) procedure

Implements al_init_primitives_addon.

(primitives-addon-uninstall) procedure

Implements al_shutdown_primitives_addon.

(make-vertex-declaration* vertex-element integer) procedure

Implements al_create_vertex_decl.

(make-vertex-declaration vertex-element integer) procedure

Implements al_create_vertex_decl, with (free-vertex-declaration!) declared as a finalizer.

(free-vertex-declaration! vertex-declaration) procedure

Implements al_destroy_vertex_decl.

(draw-primitive (c-pointer vertices) vertex-declaration bitmap (integer start) (integer end) primitive-type) procedure

Implements al_draw_prim.

(draw-indexed-primitive (c-pointer vertices) vertex-declaration bitmap (s32-vector indices) (integer count) primitive-type) procedure

Implements al_draw_indexed_prim.

(draw-soft-triangle (vertex v1) (vertex v2) (vertex v3) (uintptr state) ((function void (uintptr vertex vertex vertex)) init) ((function void (uintptr int int int int)) first) ((function void (uintptr int)) step) ((function void (uintptr int int int)) draw)) procedure

Implements al_draw_soft_triangle.

(draw-soft-line (vertex v1) (vertex v2) (uintptr state) ((function void (uintptr int int vertex vertex)) first) ((function void (uintptr int)) step) ((function void (uintptr int int)) draw)) procedure

Implements al_draw_soft_line.

(draw-line (float x1) (float y1) (float x2) (float y2) (color c) (float thickness)) procedure

Implements al_draw_line.

(draw-triangle (float x1) (float y1) (float x2) (float y2) (float x3) (float y3) (color c) (float thickness)) procedure

Implements al_draw_triangle.

(draw-rectangle (float x1) (float y1) (float x2) (float y2) (color c) (float thickness)) procedure

Implements al_draw_rectangle.

(draw-rounded-rectangle (float x1) (float y1) (float x2) (float y2) (float rx) (float ry) (color c) (float thickness)) procedure

Implements al_draw_rounded_rectangle.

(draw-circle (float cx) (float cy) (float r) (color c) (float thickness)) procedure

Implements al_draw_circle.

(draw-ellipse (float cx) (float cy) (float rx) (float ry) (color c) (float thickness)) procedure

Implements al_draw_ellipse.

(draw-arc (float cx) (float cy) (float r) (float start_theta) (float delta_theta) (color c) (float thickness)) procedure

Implements al_draw_arc.

(draw-spline (f32vector points) (color c) (float thickness)) procedure

Implements al_draw_spline.

(draw-ribbon (f32vector points) (integer32 stride) (color c) (float thickness) (integer32 num_segments)) procedure

Implements al_draw_ribbon.

(draw-triangle/fill (float x1) (float y1) (float x2) (float y2) (float x3) (float y3) (color c)) procedure

Implements al_draw_filled_triangle.

(draw-rectangle/fill (float x1) (float y1) (float x2) (float y2) (color c)) procedure

Implements al_draw_filled_rectangle.

(draw-rounded-rectangle/fill (float x1) (float y1) (float x2) (float y2) (float rx) (float ry) (color c)) procedure

Implements al_draw_filled_rounded_rectangle.

(draw-circle/fill (float cx) (float cy) (float r) (color c)) procedure

Implements al_draw_filled_circle.

(draw-ellipse/fill (float cx) (float cy) (float rx) (float ry) (color c)) procedure

Implements al_draw_filled_ellipse.

(calculate-arc (integer32 stride) (float cx) (float cy) (float rx) (float ry) (float start_theta) (float delta_theta) (float thickness) (integer32 num_segments)) procedure

Implements al_calculate_arc.

(calculate-spline (integer32 stride) (f32vector points) (float thickness) (int num_segments)) procedure

Implements al_calculate_spline.

(calculate-ribbon (integer32 dest_stride) ((const f32vector) points) (integer32 points_stride) (float thickness) (integer32 num_segments)) procedure

Implements al_calculate_ribbon.

System

(init) procedure

Implements al_init.

(inhibit-screensaver bool) procedure

Implements al_inhibit_screensaver.

(org-name) procedure

Implements al_get_org_name.

(org-name-set! string) setter

Implements al_set_org_name.

(app-name) procedure

Implements al_get_app_name.

(app-name-set! string) setter

Implements al_set_app_name.

(system-addon-uninstall) procedure

Implements al_uninstall_system.

(system-addon-installed?) procedure

Implements al_is_system_installed.

(system-driver) procedure

Implements al_get_system_driver.

(system-config) procedure

Implements al_get_system_config.

(standard-path system-path) procedure

Implements al_get_standard_path.

Threads

WARNING: Untested, may not interact well with Chicken.

Please, please tell me about your successes and workarounds. I'll fix the egg as called for.

(make-thread* (function c-pointer (thread c-pointer)) c-pointer) procedure

Implements al_create_thread.

(make-thread (function c-pointer (thread c-pointer)) c-pointer) procedure

Implements al_create_thread, with (free-thread!) declared as a finalizer.

(free-thread! thread) procedure

Implements al_destroy_thread.

(run-detached-thread (function c-pointer (c-pointer)) c-pointer) procedure

Implements al_run_detached_thread.

(thread-start! thread) procedure

Implements al_start_thread.

(thread-join! thread ((c-pointer c-pointer) ret_value)) procedure

Implements al_join_thread.

(thread-should-stop? thread) procedure

Implements al_get_thread_should_stop.

(thread-should-stop-set! thread) setter

Implements al_set_thread_should_stop.

(make-mutex*) procedure

Implements al_create_mutex.

(make-mutex) procedure

Implements al_create_mutex, with (free-mutex!) declared as a finalizer.

(free-mutex! mutex) procedure

Implements al_destroy_mutex.

(make-mutex-recursive*) procedure

Implements al_create_mutex_recursive.

(make-mutex-recursive) procedure

Implements al_create_mutex_recursive, with (free-mutex!) declared as a finalizer.

(mutex-lock! mutex) procedure

Implements al_lock_mutex.

(mutex-unlock! mutex) procedure

Implements al_unlock_mutex.

(make-condition*) procedure

Implements al_create_cond.

(make-condition) procedure

Implements al_create_cond, with (free-condition!) declared as a finalizer.

(free-condition! condition) procedure

Implements al_destroy_cond.

(condition-wait condition mutex) procedure

Implements al_wait_cond.

(condition-wait-until condition mutex timeout) procedure

Implements al_wait_cond_until.

(condition-broadcast condition) procedure

Implements al_broadcast_cond.

(condition-signal condition) procedure

Implements al_signal_cond.

Thread Local Storage

(state-store! state state-flag) procedure

Implements al_store_state.

(state-restore state) procedure

Implements al_restore_state.

Time

(current-time) procedure

Implements al_get_time.

(rest double) procedure

Implements al_rest.

(timeout-init! timeout double) procedure

Implements al_init_timeout.

Timer

(make-timer* double) procedure

Implements al_create_timer.

(make-timer double) procedure

Implements al_create_timer, with (free-timer!) declared as a finalizer.

(free-timer! timer) procedure

Implements al_destroy_timer.

(usec->sec double) procedure

Implements ALLEGRO_USECS_TO_SECS.

(msec->sec double) procedure

Implements ALLEGRO_MSECS_TO_SECS.

(bps->sec double) procedure

Implements ALLEGRO_BPS_TO_SECS.

(bpm->sec double) procedure

Implements ALLEGRO_BPM_TO_SECS.

(timer-start! timer) procedure

Implements al_start_timer.

(timer-stop! timer) procedure

Implements al_stop_timer.

(timer-started? timer) procedure

Implements al_get_timer_started.

(timer-speed timer) procedure

Implements al_get_timer_speed.

(timer-speed-set! timer double) setter

Implements al_set_timer_speed.

(timer-count timer) procedure

Implements al_get_timer_count.

(timer-count-set! timer integer) setter

Implements al_set_timer_count.

(timer-count-add! timer integer) procedure

Implements al_add_timer_count.

(timer-source timer) procedure

Implements al_get_timer_event_source.

Transformations

(transform-use transform) procedure

Implements al_use_transform.

(transform-copy! transform transform) procedure

Implements al_copy_transform.

(transform-identity! transform) procedure

Implements al_identity_transform.

(transform-build! transform (float x) (float y) (float sx) (float sy) (float theta)) procedure

Implements al_build_transform.

(transform-translate! transform (float x) (float y)) procedure

Implements al_translate_transform.

(transform-scale! transform (float sx) (float sy)) procedure

Implements al_scale_transform.

(transform-coordinates transform (float x) (float y)) procedure

Implements al_transform_coordinates; returns a 2-element list of the transformed coordinate pair.

(transform-compose! transform transform) procedure

Implements al_compose_transform.

(transform-invert! transform) procedure

Implements al_invert_transform.

(transform-check-inverse transform float) procedure

Implements al_check_inverse.

(current-transform) procedure

Implements al_get_current_transform.

True Type Font Support

(load-ttf* (string filename) (integer size) (integer flags)) procedure

Implements al_load_ttf_font.

(load-ttf (string filename) (integer size) (integer flags)) procedure

Implements al_load_ttf_font, with (free-font!) declared as a finalizer.

(load-ttf-from-file* (file f) (string filename) (integer size) (integer flags)) procedure

Implements al_load_ttf_font_f.

(load-ttf-from-file (file f) (string filename) (integer size) (integer flags)) procedure

Implements al_load_ttf_font_f, with (free-font!) declared as a finalizer.

(ttf-addon-install) procedure

Implements al_init_ttf_addon.

(ttf-addon-uninstall) procedure

Implements al_shutdown_ttf_addon.

(ttf-addon-version) procedure

Implements al_get_allegro_ttf_version.

UTF Strings

(make-utf-string* string) procedure

Implements al_ustr_new.

(make-utf-string string) procedure

Implements al_ustr_new, with (free-utf-string!) declared as a finalizer.

(make-utf-string-from-buffer* blob) procedure

Given a blob, produces a new utf-string.

(make-utf-string-from-buffer blob) procedure

Given a blob, produces a new utf-string, with (free-utf-string!) declared as a finalizer.

(free-utf-string! utf-string) procedure

Implements al_ustr_free.

(utf->string utf-string) procedure

Implements al_cstr.

(utf->buffer! utf-string blob) procedure

Implements al_ustr_to_buffer.

(utf->string-copy utf-string) procedure

Implements al_cstr_dup.

(utf-copy* utf-string) procedure

Implements al_ustr_dup.

(utf-copy utf-string) procedure

Implements al_ustr_dup, with (free-utf-string!) declared as a finalizer.

(utf-substring* utf-string (integer start) (integer end)) procedure

Implements al_ustr_dup_substr.

(utf-substring utf-string (integer start) (integer end)) procedure

Implements al_ustr_dup_substr, with (free-utf-string!) declared as a finalizer.

(utf-empty-string) procedure

Implements al_ustr_empty_string.

(make-utf-null-string*) procedure

Makes an empty utf-string struct, where the string pointer is unset.

(make-utf-null-string) procedure

Makes an empty utf-string struct, where the string pointer is unset, with (free-utf-string!) declared as a finalizer.

(utf-reference-cstr* string) procedure

Implements al_ref_cstr.

(utf-reference-cstr string) procedure

Implements al_ref_cstr, with (free-utf-string!) declared as a finalizer.

(utf-reference-buffer* blob) procedure

Implements al_ref_buffer.

(utf-reference-buffer blob) procedure

Implements al_ref_buffer, with (free-utf-string!) declared as a finalizer.

(utf-reference-utf-string* utf-string (integer start) (integer end)) procedure

Implements al_ref_ustr.

(utf-reference-utf-string utf-string (integer start) (integer end)) procedure

Implements al_ref_ustr, with (free-utf-string!) declared as a finalizer.

(utf-size utf-string) procedure

Implements al_ustr_size.

(utf-length utf-string) procedure

Implements al_ustr_length.

(utf-offset utf-string integer) procedure

Implements al_ustr_offset.

(utf-next utf-string integer) procedure

Implements al_ustr_next, modified to return #f at the end of the string.

(utf-previous utf-string integer) procedure

Implements al_ustr_prev, modified to return #f at the end of the string.

(utf-get utf-string integer) procedure

Implements al_ustr_get.

(utf-get-next utf-string integer) procedure

Returns a 2-element list consisting of the next code and its position, or #f if at the end of the string.

(utf-get-prev utf-string integer) procedure

Returns a 2-element list consisting of the previous code and its position, or #f if at the start of the string.

(utf-remove-char! utf-string integer) procedure

Implements al_ustr_remove_chr.

(utf-remove-range! utf-string (integer start) (integer end)) procedure

Implements al_ustr_remove_range.

(utf-truncate! utf-string integer) procedure

Implements al_ustr_truncate.

(utf-ltrim! utf-string) procedure

Implements al_ustr_ltrim_ws.

(utf-rtrim! utf-string) procedure

Implements al_ustr_rtrim_ws.

(utf-trim! utf-string) procedure

Implements al_ustr_trim_ws.

(utf-assign! utf-string utf-string) procedure

Implements al_ustr_assign.

(utf-assign-substring! utf-string utf-string (integer start) (integer end)) procedure

Implements al_ustr_assign_substr.

(utf-assign-string! utf-string string) procedure

Implements al_ustr_assign_cstr.

(utf-set-char! utf-string (integer pos) (integer char)) procedure

Implements al_ustr_set_chr.

(utf-replace-range! utf-string (integer start) (integer end) utf-string) procedure

Implements al_ustr_replace_range.

(utf-find utf-string (integer start) utf-string) procedure

Implements al_ustr_find_str.

(utf-find-string utf-string (integer start) string) procedure

Implements al_ustr_find_cstr.

(utf-find-char utf-string (integer start) (integer char)) procedure

Implements al_ustr_find_chr.

(utf-find-set utf-string (integer start) utf-string) procedure

Implements al_ustr_find_set.

(utf-find-set-string utf-string integer string) procedure

Implements al_ustr_find_set_cstr.

(utf-find-cset utf-string integer utf-string) procedure

Implements al_ustr_find_cset.

(utf-find-cset-string utf-string integer string) procedure

Implements al_ustr_find_set_cstr.

(utf-rfind utf-string integer utf-string) procedure

Implements al_ustr_rfind_str.

(utf-rfind-char utf-string integer (integer char)) procedure

Implements al_ustr_rfind_char.

(utf-rfind-string utf-string integer string) procedure

Implements al_ustr_rfind_cstr.

(utf-find&replace! utf-string integer utf-string utf-string) procedure

Implements al_ustr_find_replace.

(utf-find&replace-string! utf-string integer string string) procedure

Implements al_ustr_find_replace_cstr.

(utf-equal? utf-string utf-string) procedure

Implements al_ustr_equal.

(utf-compare utf-string utf-string) procedure

Implements al_ustr_compare.

(utf-ncompare utf-string utf-string integer) procedure

Implements al_ustr_ncompare.

(utf-prefix? utf-string utf-string) procedure

Implements al_ustr_has_prefix.

(utf-prefix-string? utf-string string) procedure

Implements al_ustr_has_prefix_cstr.

(utf-suffix? utf-string utf-string) procedure

Implements al_ustr_has_prefix.

(utf-suffix-string? utf-string string) procedure

Implements al_ustr_has_suffix_cstr.

(utf8-width integer32) procedure

Implements al_utf8_width.

(utf8-encode! blob integer32) procedure

Implements al_utf8_encode.

(utf-string-utf16-size utf-string) procedure

Implements al_ustr_size_utf16.

(utf-string-utf16-encode utf-string blob integer) procedure

Implements al_ustr_encode_utf16.

(utf16-width integer) procedure

Implements al_utf16_width.

(utf16-encode u16vector integer32) procedure

Implements al_utf16_encode.

Windows

(windows-window-handle) procedure

Implements al_get_win_window_handle.

License

Copyright 2012 Daniel J. Leslie. All rights reserved.

The contact email address for Daniel J. Leslie is dan@ironoxide.ca

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of
     conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list
     of conditions and the following disclaimer in the documentation and/or other materials
     provided with the distribution.

THIS SOFTWARE IS PROVIDED BY DANIEL J. LESLIE AS IS AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL DANIEL J. LESLIE OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

The views and conclusions contained in the software and documentation are those of the authors and should not be interpreted as representing official policies, either expressed or implied, of Daniel J. Leslie.

Contents »