Crate dos_like_sys

Source
Expand description

Rust high level bindings to dos-like, the library/framework for writing applications that look like MS-DOS programs from the 1990’s.

The bindings are directly generated from the original source code.

§Using

This crate does not function as a regular library, because it already defines a main function by itself. Attempting to create your own executable with its own main function will result in a linker error. For the building process to work, the main source file needs the no_main attribute and to define an extern C function dosmain instead.

#![no_main]

#[no_mangle]
pub extern "C" fn dosmain() -> i32 {
    // your code here
 
    0
}

Structs§

music_t
sound_t

Constants§

DEFAULT_FONT_8X8
DEFAULT_FONT_8X16
DEFAULT_FONT_9X16
DEFAULT_SOUNDBANK_AWE32
DEFAULT_SOUNDBANK_SB16
KEY_MODIFIER_RELEASED
MUSIC_CHANNELS
SOUND_CHANNELS
keycode_t_KEYCOUNT
keycode_t_KEYPADDING
keycode_t_KEY_0
keycode_t_KEY_1
keycode_t_KEY_2
keycode_t_KEY_3
keycode_t_KEY_4
keycode_t_KEY_5
keycode_t_KEY_6
keycode_t_KEY_7
keycode_t_KEY_8
keycode_t_KEY_9
keycode_t_KEY_A
keycode_t_KEY_ACCEPT
keycode_t_KEY_ADD
keycode_t_KEY_APPS
keycode_t_KEY_ATTN
keycode_t_KEY_B
keycode_t_KEY_BACK
keycode_t_KEY_BROWSER_BACK
keycode_t_KEY_BROWSER_FAVORITES
keycode_t_KEY_BROWSER_FORWARD
keycode_t_KEY_BROWSER_HOME
keycode_t_KEY_BROWSER_REFRESH
keycode_t_KEY_BROWSER_SEARCH
keycode_t_KEY_BROWSER_STOP
keycode_t_KEY_C
keycode_t_KEY_CANCEL
keycode_t_KEY_CAPITAL
keycode_t_KEY_CLEAR
keycode_t_KEY_CONTROL
keycode_t_KEY_CONVERT
keycode_t_KEY_CRSEL
keycode_t_KEY_D
keycode_t_KEY_DECIMAL
keycode_t_KEY_DELETE
keycode_t_KEY_DIVIDE
keycode_t_KEY_DOWN
keycode_t_KEY_E
keycode_t_KEY_END
keycode_t_KEY_EREOF
keycode_t_KEY_ESCAPE
keycode_t_KEY_EXEC
keycode_t_KEY_EXSEL
keycode_t_KEY_F
keycode_t_KEY_F1
keycode_t_KEY_F2
keycode_t_KEY_F3
keycode_t_KEY_F4
keycode_t_KEY_F5
keycode_t_KEY_F6
keycode_t_KEY_F7
keycode_t_KEY_F8
keycode_t_KEY_F9
keycode_t_KEY_F10
keycode_t_KEY_F11
keycode_t_KEY_F12
keycode_t_KEY_F13
keycode_t_KEY_F14
keycode_t_KEY_F15
keycode_t_KEY_F16
keycode_t_KEY_F17
keycode_t_KEY_F18
keycode_t_KEY_F19
keycode_t_KEY_F20
keycode_t_KEY_F21
keycode_t_KEY_F22
keycode_t_KEY_F23
keycode_t_KEY_F24
keycode_t_KEY_FINAL
keycode_t_KEY_G
keycode_t_KEY_H
keycode_t_KEY_HANGUL
keycode_t_KEY_HANJA
keycode_t_KEY_HELP
keycode_t_KEY_HOME
keycode_t_KEY_I
keycode_t_KEY_INSERT
keycode_t_KEY_INVALID
keycode_t_KEY_J
keycode_t_KEY_JUNJA
keycode_t_KEY_K
keycode_t_KEY_KANA
keycode_t_KEY_KANJI
keycode_t_KEY_L
keycode_t_KEY_LAUNCH_APP1
keycode_t_KEY_LAUNCH_APP2
keycode_t_KEY_LAUNCH_MAIL
keycode_t_KEY_LAUNCH_MEDIA_SELECT
keycode_t_KEY_LBUTTON
keycode_t_KEY_LCONTROL
keycode_t_KEY_LEFT
keycode_t_KEY_LMENU
keycode_t_KEY_LSHIFT
keycode_t_KEY_LWIN
keycode_t_KEY_M
keycode_t_KEY_MBUTTON
keycode_t_KEY_MEDIA_NEXT_TRACK
keycode_t_KEY_MEDIA_PLAY_PAUSE
keycode_t_KEY_MEDIA_PREV_TRACK
keycode_t_KEY_MEDIA_STOP
keycode_t_KEY_MENU
keycode_t_KEY_MODECHANGE
keycode_t_KEY_MULTIPLY
keycode_t_KEY_N
keycode_t_KEY_NEXT
keycode_t_KEY_NONAME
keycode_t_KEY_NONCONVERT
keycode_t_KEY_NUMLOCK
keycode_t_KEY_NUMPAD0
keycode_t_KEY_NUMPAD1
keycode_t_KEY_NUMPAD2
keycode_t_KEY_NUMPAD3
keycode_t_KEY_NUMPAD4
keycode_t_KEY_NUMPAD5
keycode_t_KEY_NUMPAD6
keycode_t_KEY_NUMPAD7
keycode_t_KEY_NUMPAD8
keycode_t_KEY_NUMPAD9
keycode_t_KEY_O
keycode_t_KEY_OEM_1
keycode_t_KEY_OEM_2
keycode_t_KEY_OEM_3
keycode_t_KEY_OEM_4
keycode_t_KEY_OEM_5
keycode_t_KEY_OEM_6
keycode_t_KEY_OEM_7
keycode_t_KEY_OEM_8
keycode_t_KEY_OEM_102
keycode_t_KEY_OEM_CLEAR
keycode_t_KEY_OEM_COMMA
keycode_t_KEY_OEM_MINUS
keycode_t_KEY_OEM_PERIOD
keycode_t_KEY_OEM_PLUS
keycode_t_KEY_P
keycode_t_KEY_PA1
keycode_t_KEY_PAUSE
keycode_t_KEY_PLAY
keycode_t_KEY_PRINT
keycode_t_KEY_PRIOR
keycode_t_KEY_PROCESSKEY
keycode_t_KEY_Q
keycode_t_KEY_R
keycode_t_KEY_RBUTTON
keycode_t_KEY_RCONTROL
keycode_t_KEY_RETURN
keycode_t_KEY_RIGHT
keycode_t_KEY_RMENU
keycode_t_KEY_RSHIFT
keycode_t_KEY_RWIN
keycode_t_KEY_S
keycode_t_KEY_SCROLL
keycode_t_KEY_SELECT
keycode_t_KEY_SEPARATOR
keycode_t_KEY_SHIFT
keycode_t_KEY_SLEEP
keycode_t_KEY_SNAPSHOT
keycode_t_KEY_SPACE
keycode_t_KEY_SUBTRACT
keycode_t_KEY_T
keycode_t_KEY_TAB
keycode_t_KEY_U
keycode_t_KEY_UP
keycode_t_KEY_V
keycode_t_KEY_VOLUME_DOWN
keycode_t_KEY_VOLUME_MUTE
keycode_t_KEY_VOLUME_UP
keycode_t_KEY_W
keycode_t_KEY_X
keycode_t_KEY_XBUTTON1
keycode_t_KEY_XBUTTON2
keycode_t_KEY_Y
keycode_t_KEY_Z
keycode_t_KEY_ZOOM
soundmode_t_soundmode_8bit_mono_5000
soundmode_t_soundmode_8bit_mono_8000
soundmode_t_soundmode_8bit_mono_11025
soundmode_t_soundmode_8bit_mono_16000
soundmode_t_soundmode_8bit_mono_22050
soundmode_t_soundmode_8bit_mono_32000
soundmode_t_soundmode_8bit_mono_44100
soundmode_t_soundmode_8bit_stereo_5000
soundmode_t_soundmode_8bit_stereo_8000
soundmode_t_soundmode_8bit_stereo_11025
soundmode_t_soundmode_8bit_stereo_16000
soundmode_t_soundmode_8bit_stereo_22050
soundmode_t_soundmode_8bit_stereo_32000
soundmode_t_soundmode_8bit_stereo_44100
soundmode_t_soundmode_16bit_mono_5000
soundmode_t_soundmode_16bit_mono_8000
soundmode_t_soundmode_16bit_mono_11025
soundmode_t_soundmode_16bit_mono_16000
soundmode_t_soundmode_16bit_mono_22050
soundmode_t_soundmode_16bit_mono_32000
soundmode_t_soundmode_16bit_mono_44100
soundmode_t_soundmode_16bit_stereo_5000
soundmode_t_soundmode_16bit_stereo_8000
soundmode_t_soundmode_16bit_stereo_11025
soundmode_t_soundmode_16bit_stereo_16000
soundmode_t_soundmode_16bit_stereo_22050
soundmode_t_soundmode_16bit_stereo_32000
soundmode_t_soundmode_16bit_stereo_44100
videomode_t_force_size_videomode
videomode_t_videomode_40x25_8x8
videomode_t_videomode_40x25_9x16
videomode_t_videomode_80x25_8x8
videomode_t_videomode_80x25_8x16
videomode_t_videomode_80x25_9x16
videomode_t_videomode_80x43_8x8
videomode_t_videomode_80x50_8x8
videomode_t_videomode_320x200
videomode_t_videomode_320x240
videomode_t_videomode_320x400
videomode_t_videomode_640x200
videomode_t_videomode_640x350
videomode_t_videomode_640x400
videomode_t_videomode_640x480

Functions§

allnotesoff
bar
blit
boundaryfill
centertextxy
circle
clearscreen
clrscr
cputs
createmus
createsound
cursoff
curson
drawpoly
ellipse
fillcircle
fillellipse
fillpoly
floodfill
getcolor
getpal
getpixel
gotoxy
hline
installuserfont
installusersoundbank
keystate
line
loadgif
loadmid
loadmod
loadmus
loadopb
loadwav
maskblit
mouserelx
mouserely
mousex
mousey
musicplaying
musicvolume
noteoff
noteon
outtextxy
playmusic
playsound
putpixel
readchars
readkeys
rectangle
resetdrawtarget
screenbuffer
screenheight
screenwidth
setcolor
setdoublebuffer
setdrawtarget
setinstrument
setpal
setsoundbank
setsoundmode
settextstyle
setvideomode
shuttingdown
soundplaying
soundvolume
stopmusic
stopsound
swapbuffers
textbackground
textcolor
waitvbl
wherex
wherey
wraptextxy

Type Aliases§

_bindgen_ty_1
_bindgen_ty_2
keycode_t
soundmode_t
videomode_t