Quick and dirty sound for DOOM. Samplerate seems off, but it's just a demo.

This commit is contained in:
Toby Jaffey 2025-12-14 23:32:34 +00:00
parent e524ea4815
commit 39e7dddc5a
4 changed files with 83 additions and 10 deletions

View file

@ -198,6 +198,9 @@ fn submain() !void {
while(true) {
pd.doom_update();
const doomSndBuf: [*]i16 = pd.doom_get_sound_buffer();
uvm.renderAudio(doomSndBuf, 2048);
const fb: [*]const u8 = pd.doom_get_framebuffer(4);
uvm.render(fb, WIDTH * HEIGHT * 4);

View file

@ -24,6 +24,10 @@ pub inline fn syscall(id: u32, param1: u32, param2: u32) u32 {
return val;
}
pub inline fn renderAudio(audbuf: [*]const i16, len:u32) void {
_ = syscall(uvm32.UVM32_SYSCALL_RENDERAUDIO, @intFromPtr(audbuf), len);
}
pub inline fn render(fb: [*]const u8, len:u32) void {
_ = syscall(uvm32.UVM32_SYSCALL_RENDER, @intFromPtr(fb), len);
}