aboutsummaryrefslogtreecommitdiff
path: root/board (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix indent/stylingNicholas Tay2022-05-181-2/+2
|
* Add Linux supportNicholas Tay2022-05-173-6/+10
| | | | | | | | Oh boy this was a bit of a hassle lol - dynamic loading was the easiest part... but then came both sound and x11 Using SDL for now but I'd really like to change it for even lower layer, but then I might have to make my own mixer... oh no.
* Improve plugin loading architectureNicholas Tay2022-05-115-35/+48
| | | | | | | | | | | | | This should be better, maybe the variable names could be better though. Init is more extensible, we take in a 'board_data' struct on the plugin end that has everything it needs (mainly function pointers for now). Then, a 'board' struct is given back to the main Clak runtime, with everything it needs to know (again, mainly function pointers). It is a bit weird that the board is not stored with Clak but as a pointer to the dynamically loaded bit, but not sure.
* Dynamic load boards as DLL (windows only for now)Nicholas Tay2022-05-109-23/+76
| | | | | | The .h files are pretty weird, should look at other C projects to see how they load plugins. This function pointer business with typedefs is kinda weird, not sure where they should live.
* More messing around with plugin systemNicholas Tay2022-05-084-0/+23
| | | | | Just more attempts, but I think I'm gonna switch over to dynamic .so/.dll loading. That would be pretty fun to check out.
* Initial working Windows playsoundNicholas Tay2022-04-282-0/+0