28 lines
1.0 KiB
Markdown
28 lines
1.0 KiB
Markdown
# Playdate SDK notes
|
|
|
|
Playdate should compile with playdate.cross
|
|
Check for 'pdc' to see if it's available
|
|
If it is, use playdate.cross to compile it and everything else
|
|
Do not include main; instead, actors should receive messages from the playdate SDK
|
|
pdc is used to bundle the compiled game's assets; playdate filesystem only can access files inside that bundle
|
|
|
|
Simulator dylib is lpatform specific, bundled only to allow it to load into the simulator; doesn't ship to playdate
|
|
pdex uses flags from playdate.cross
|
|
|
|
Example with meson:
|
|
pdx = custom_target('pdx bundle',
|
|
output: 'GameOfLife.pdx',
|
|
command: [join_paths(env['PLAYDATE_SDK_PATH'], 'bin', 'pdc'), 'Source', '@OUTPUT@'],
|
|
input: [elf, sim_dylib])
|
|
|
|
|
|
sim_dylib = custom_target('simulator dylib',
|
|
output: 'pdex.dylib',
|
|
command: ['clang', '-dynamiclib', '-DTARGET_SIMULATOR=1', '-o', '@OUTPUT@', 'main.c', 'setup.c'],
|
|
build_by_default: true)
|
|
|
|
elf = executable('pdex', ['main.c', 'setup.c'],
|
|
install: false,
|
|
c_args: device_c_args,
|
|
link_args: device_link_args)
|