Skip to content

Agent API_p10

grisun0 edited this page Oct 23, 2026 · 11 revisions

API (page 10 of 21)

Previous: API_p9.md

progs/asm/json.s

progs/asm/ldhello.s

progs/asm/lz4.s

progs/asm/lzss.s

progs/asm/mtop.s

progs/asm/sign.s

progs/asm/w1.s

progs/doomedit/doomedit.c

Depends on: kernel/string.c, progs/minios_abi.h, progs/nuklear/nuklear_minios.h, progs/nuklear/nuklear_theme.h

  • dmap_thing_type (function) progs/doomedit/doomedit.c:165 static int dmap_thing_type(int cell) -- Thing type ids from the engine mobjinfo table, each with its sprite * verified present in the shareware IWAD.
  • dmap_push_history (function) progs/doomedit/doomedit.c:272 static void dmap_push_history(void)
  • dmap_undo (function) progs/doomedit/doomedit.c:289 static int dmap_undo(void)
  • dmap_redo (function) progs/doomedit/doomedit.c:307 static int dmap_redo(void)
  • dmap_apply_cell (function) progs/doomedit/doomedit.c:326 static void dmap_apply_cell(int r, int c, int brush) -- dmap_undo_h[dmap_undo_top] = dmap_h; memcpy(dmap_undo_g[dmap_undo_top], dmap_grid, sizeof(dmap_grid))...
  • dmap_flood_fill (function) progs/doomedit/doomedit.c:344 static void dmap_flood_fill(int sr, int sc, int new_cell) -- if (brush == DMAP_PLAYER || brush == DMAP_EXIT) { for (rr = 0; rr < dmap_h; rr++) for (cc = 0; cc < dmap_w; cc++) if...
  • dmap_draw_line (function) progs/doomedit/doomedit.c:383 static void dmap_draw_line(int r0, int c0, int r1, int c1, int cell) -- if (nr < 0 || nc < 0 || nr >= dmap_h || nc >= dmap_w) continue; if (dmap_grid[nr][nc] != old_cell) continue...
  • dmap_draw_rect (function) progs/doomedit/doomedit.c:411 static void dmap_draw_rect(int r0, int c0, int r1, int c1, int cell) -- e2 = err; if (e2 > -dr) { err -= dc; r0 += sr; } if (e2 < dc) { err += dr; c0 += sc; } } dmap_level_sel = 0; } /**...
  • dmap_reach_map (function) progs/doomedit/doomedit.c:440 static void dmap_reach_map(int seen[DMAP_MAX_H][DMAP_MAX_W]) -- for (r = rt; r <= rb; r++) { if (r >= 0 && r < dmap_h && cl >= 0 && cl < dmap_w) { if (dmap_grid[r][cl] !=...
  • dmap_path_len (function) progs/doomedit/doomedit.c:480 static int dmap_path_len(void) -- int nr = cr + dirs[k][0], nc = cc + dirs[k][1]; if (nr < 0 || nc < 0 || nr >= dmap_h || nc >= dmap_w) continue; if...
  • dmap_stats (function) progs/doomedit/doomedit.c:522 static void dmap_stats(char *out, int max) -- if (nr < 0 || nc < 0 || nr >= dmap_h || nc >= dmap_w) continue; if (dist[nr][nc] >= 0 ||...
  • dmap_spawn (function) progs/doomedit/doomedit.c:550 static long dmap_spawn(const char *path, int argc, const char **argv) -- } path = dmap_path_len(); if (dmap_validate(msg, sizeof(msg)) == 0) snprintf(out, (size_t)max, "%dx%d %d sect path...
  • dmap_vga (function) progs/doomedit/doomedit.c:561 static long dmap_vga(int on) -- static int dmap_validate(char msg, int max); /* Run a program through SYS_SPAWN, preserving the editor. static...
  • dmap_is_wall (function) progs/doomedit/doomedit.c:570 static int dmap_is_wall(int row, int col) -- : "rcx", "r11", "memory"); return ret; } /** Release or reclaim the display around a spawned child. static long...
  • dmap_walkable (function) progs/doomedit/doomedit.c:577 static int dmap_walkable(int cell) -- asm volatile("syscall" : "=a"(ret) : "a"(MINIOS_SYS_VGA_MODE), "D"((long)on) : "rcx", "r11", "memory"); return...
  • dmap_cell_class (function) progs/doomedit/doomedit.c:583 static int dmap_cell_class(int cell) -- /** True for solid cells; out of bounds counts as wall to stay closed. static int dmap_is_wall(int row, int col) {...
  • dmap_cell_color (function) progs/doomedit/doomedit.c:594 static struct nk_color dmap_cell_color(int cell) -- } /** Sector class of a walkable cell: doors stand alone, styles never merge. static int dmap_cell_class(int cell) {...
  • dmap_new (function) progs/doomedit/doomedit.c:639 static void dmap_new(void) -- case DMAP_RSUIT: case DMAP_CMAP: case DMAP_LAMP: return nk_rgb(200, 90, 200); case DMAP_KEYB: case DMAP_KEYR: case...
  • dmap_recenter (function) progs/doomedit/doomedit.c:804 static void dmap_recenter(void)
  • dmap_load_preset (function) progs/doomedit/doomedit.c:816 static int dmap_load_preset(int idx) -- /** Move the preview camera onto the player start tile. static void dmap_recenter(void) { int r, c; for (r = 0; r <...
  • dmap_rand (function) progs/doomedit/doomedit.c:849 static unsigned dmap_rand(void) -- int ch = dmap_levels[idx][row][k]; if (!dmap_walkable(ch) && ch != DMAP_WALL) return -1; dmap_grid[row][k] =...
  • dmap_free_cell (function) progs/doomedit/doomedit.c:857 static int dmap_free_cell(int *r, int *c) -- dmap_level_sel = idx + 1; snprintf(dmap_status, sizeof(dmap_status), "level: %s", dmap_level_names[idx]); return 0...
  • dmap_random_map (function) progs/doomedit/doomedit.c:871 static void dmap_random_map(unsigned seed) -- Procedural map of connected rooms: several non-overlapping rect rooms carved out of solid rock, joined in sequence...
  • dmap_load (function) progs/doomedit/doomedit.c:1077 static int dmap_load(const char *path) -- } if (dmap_validate(msg, sizeof(msg)) == 0) { dmap_recenter(); snprintf(dmap_status, sizeof(dmap_status), "random...
  • dmap_save_txt (function) progs/doomedit/doomedit.c:1129 static int dmap_save_txt(const char *path) -- if (row < 3 || w < 3 || w > DMAP_MAX_W) return -1; dmap_push_history(); dmap_anchor_active = 0; dmap_w = w; dmap_h =...
  • areas (function) progs/doomedit/doomedit.c:1150 * floor areas (doors stand alone, dark and nukage never merge);
  • dmap_label_regions (function) progs/doomedit/doomedit.c:1163 static int dmap_label_regions(void) -- Sector table backing the multi-sector exporter.
  • dmap_validate (function) progs/doomedit/doomedit.c:1244 static int dmap_validate(char *msg, int max) -- dmap_sec_floor[nsec] = DMAP_FLOOR_H; dmap_sec_ceil[nsec] = DMAP_CEIL_H; dmap_sec_flat[nsec] = DMAP_FLOOR_FLAT...
  • dmap_w8 (function) progs/doomedit/doomedit.c:1317 static void dmap_w8(unsigned v)
  • dmap_w16 (function) progs/doomedit/doomedit.c:1318 static void dmap_w16(int v)
  • dmap_w32 (function) progs/doomedit/doomedit.c:1322 static void dmap_w32(int v)
  • dmap_wtex (function) progs/doomedit/doomedit.c:1326 static void dmap_wtex(const char *name)
  • dmap_seg_angle (function) progs/doomedit/doomedit.c:1333 static int dmap_seg_angle(int dx, int dy) -- dmap_wp++ = (unsigned char)(v & 0xFF); dmap_wp++ = (unsigned char)((v >> 8) & 0xFF); } static void dmap_w32(int v) {...
  • dmap_build_wad (function) progs/doomedit/doomedit.c:1343 static int dmap_build_wad(int *size_out) -- Compile the grid into a vanilla multi-sector E1M1 PWAD image.
  • dmap_export_wad (function) progs/doomedit/doomedit.c:1660 static int dmap_export_wad(const char *path) -- dmap_wp = dmap_wad; dmap_w8('P'); dmap_w8('W'); dmap_w8('A'); dmap_w8('D'); dmap_w32(11); dmap_w32(table_off)...
  • dmap_check_wad (function) progs/doomedit/doomedit.c:1675 static int dmap_check_wad(const char *path) -- int size = 0; FILE *fp; size_t wrote; if (dmap_build_wad(&size) != 0) return -1; fp = fopen(path, "wb"); if (!fp)...
  • dmap_preview (function) progs/doomedit/doomedit.c:1693 static void dmap_preview(struct nk_command_buffer *canvas, struct nk_rect area) -- if (!fp) return -1; if (fread(head, 1, 12, fp) != 12) { fclose(fp); return -1; } fclose(fp); magic_ok = head[0] ==...
  • dmap_brush_combo (function) progs/doomedit/doomedit.c:1760 static void dmap_brush_combo(struct nk_context *ctx) -- dist = 0.05f; line_h = (int)(area.h / dist); if (line_h > (int)area.h) line_h = (int)area.h; y0 = (int)(area.y +...
  • dmap_canvas (function) progs/doomedit/doomedit.c:1773 static void dmap_canvas(struct nk_context *ctx) -- Paintable tile canvas with per-category colors.
  • dmap_preview_row (function) progs/doomedit/doomedit.c:1863 static void dmap_preview_row(struct nk_context *ctx) -- dmap_draw_rect(dmap_anchor_r, dmap_anchor_c, r, c, dmap_brush); dmap_anchor_active = 0; dmap_level_sel = 0; } } else...
  • dmap_run_map (function) progs/doomedit/doomedit.c:1898 static void dmap_run_map(void) -- } if (nk_button_label(ctx, "Reset")) { int r, c; for (r = 0; r < dmap_h; r++) for (c = 0; c < dmap_w; c++) if...
  • dmap_scancode (function) progs/doomedit/doomedit.c:2037 static void dmap_scancode(int code, int make, int e0, void *ud)
  • dmap_gui_run (function) progs/doomedit/doomedit.c:2056 static void dmap_gui_run(void) -- dmap_ctrl_held = make; return; } if (!make || !dmap_ctrl_held) return; if (code == 0x13) dmap_run_requested = 1...
  • dmap_demo_room (function) progs/doomedit/doomedit.c:2110 static void dmap_demo_room(void) -- nk_set_window_origin(origin[0], origin[1]); nk_clear(&ctx); { unsigned t0 = (unsigned)nk_sys_time_ms(); while...
  • dmap_selftest (function) progs/doomedit/doomedit.c:2122 static int dmap_selftest(void) -- /** Headless demo room shared by --demo and the selftest build check. static void dmap_demo_room(void) { dmap_w = 9...
  • main (function) progs/doomedit/doomedit.c:2246 int main(int argc, char **argv)

progs/doomgeneric/am_map.c

Depends on: progs/doomgeneric/am_map.h, progs/doomgeneric/deh_main.h, progs/doomgeneric/doomdef.h, progs/doomgeneric/doomkeys.h, progs/doomgeneric/doomstat.h, progs/doomgeneric/dstrings.h, progs/doomgeneric/i_system.h, progs/doomgeneric/m_cheat.h, progs/doomgeneric/m_controls.h, progs/doomgeneric/m_misc.h, progs/doomgeneric/p_local.h, progs/doomgeneric/r_state.h, progs/doomgeneric/st_stuff.h, progs/doomgeneric/v_video.h, progs/doomgeneric/w_wad.h, progs/doomgeneric/z_zone.h

progs/doomgeneric/am_map.h

Depends on: progs/doomgeneric/d_event.h, progs/doomgeneric/m_cheat.h Imported by: progs/doomgeneric/am_map.c, progs/doomgeneric/d_main.c, progs/doomgeneric/g_game.c, progs/doomgeneric/p_inter.c, progs/doomgeneric/st_stuff.c

progs/doomgeneric/d_event.c

Depends on: progs/doomgeneric/d_event.h

progs/doomgeneric/d_event.h

Depends on: progs/doomgeneric/doomtype.h Imported by: progs/doomgeneric/am_map.h, progs/doomgeneric/d_event.c, progs/doomgeneric/d_loop.c, progs/doomgeneric/f_finale.h, progs/doomgeneric/g_game.h, progs/doomgeneric/hu_stuff.h, progs/doomgeneric/i_joystick.c, progs/doomgeneric/i_system.h, progs/doomgeneric/i_video.c, progs/doomgeneric/m_menu.h, progs/doomgeneric/p_pspr.c, progs/doomgeneric/p_user.c, progs/doomgeneric/st_stuff.h

progs/doomgeneric/d_iwad.c

Depends on: kernel/string.c, progs/doomgeneric/config.h, progs/doomgeneric/d_iwad.h, progs/doomgeneric/deh_str.h, progs/doomgeneric/doomkeys.h, progs/doomgeneric/i_system.h, progs/doomgeneric/m_argv.h, progs/doomgeneric/m_config.h, progs/doomgeneric/m_misc.h, progs/doomgeneric/w_wad.h, progs/doomgeneric/z_zone.h

progs/doomgeneric/d_iwad.h

Depends on: progs/doomgeneric/d_mode.h Imported by: progs/doomgeneric/d_iwad.c, progs/doomgeneric/d_main.c, progs/doomgeneric/w_main.c, progs/doomgeneric/w_wad.c

progs/doomgeneric/d_loop.c

Depends on: kernel/string.c, progs/doomgeneric/d_event.h, progs/doomgeneric/d_loop.h, progs/doomgeneric/d_ticcmd.h, progs/doomgeneric/doomfeatures.h, progs/doomgeneric/i_system.h, progs/doomgeneric/i_timer.h, progs/doomgeneric/i_video.h, progs/doomgeneric/m_argv.h, progs/doomgeneric/m_fixed.h, progs/doomgeneric/net_client.h, progs/doomgeneric/net_gui.h, progs/doomgeneric/net_io.h, progs/doomgeneric/net_loop.h, progs/doomgeneric/net_query.h, progs/doomgeneric/net_sdl.h, progs/doomgeneric/net_server.h

progs/doomgeneric/d_loop.h

Depends on: progs/doomgeneric/net_defs.h Imported by: progs/doomgeneric/d_loop.c, progs/doomgeneric/d_net.c, progs/doomgeneric/doomstat.h, progs/doomgeneric/r_main.c

progs/doomgeneric/d_main.c

Depends on: kernel/string.c, progs/doomgeneric/am_map.h, progs/doomgeneric/config.h, progs/doomgeneric/d_iwad.h, progs/doomgeneric/d_main.h, progs/doomgeneric/deh_main.h, progs/doomgeneric/doomdef.h, progs/doomgeneric/doomfeatures.h, progs/doomgeneric/doomstat.h, progs/doomgeneric/dstrings.h, progs/doomgeneric/f_finale.h, progs/doomgeneric/f_wipe.h, progs/doomgeneric/g_game.h, progs/doomgeneric/hu_stuff.h, progs/doomgeneric/i_endoom.h, progs/doomgeneric/i_joystick.h, progs/doomgeneric/i_system.h, progs/doomgeneric/i_timer.h, progs/doomgeneric/i_video.h, progs/doomgeneric/m_argv.h, progs/doomgeneric/m_config.h, progs/doomgeneric/m_controls.h, progs/doomgeneric/m_menu.h, progs/doomgeneric/m_misc.h, progs/doomgeneric/net_client.h, progs/doomgeneric/net_dedicated.h, progs/doomgeneric/net_query.h, progs/doomgeneric/p_saveg.h, progs/doomgeneric/p_setup.h, progs/doomgeneric/r_local.h, progs/doomgeneric/s_sound.h, progs/doomgeneric/sounds.h, progs/doomgeneric/st_stuff.h, progs/doomgeneric/statdump.h, progs/doomgeneric/v_video.h, progs/doomgeneric/w_main.h, progs/doomgeneric/w_wad.h, progs/doomgeneric/wi_stuff.h, progs/doomgeneric/z_zone.h

progs/doomgeneric/d_main.h

Depends on: progs/doomgeneric/doomdef.h Imported by: progs/doomgeneric/d_main.c, progs/doomgeneric/d_net.c, progs/doomgeneric/f_finale.c, progs/doomgeneric/g_game.c, progs/doomgeneric/i_video.c, progs/doomgeneric/m_menu.c

progs/doomgeneric/d_mode.c

Depends on: progs/doomgeneric/d_mode.h, progs/doomgeneric/doomtype.h

progs/doomgeneric/d_mode.h

Depends on: progs/doomgeneric/doomtype.h Imported by: progs/doomgeneric/d_iwad.h, progs/doomgeneric/d_mode.c, progs/doomgeneric/doomdef.h, progs/doomgeneric/doomstat.h, progs/doomgeneric/statdump.c, progs/doomgeneric/w_wad.h

progs/doomgeneric/d_net.c

Depends on: progs/doomgeneric/d_loop.h, progs/doomgeneric/d_main.h, progs/doomgeneric/deh_main.h, progs/doomgeneric/doomdef.h, progs/doomgeneric/doomfeatures.h, progs/doomgeneric/doomstat.h, progs/doomgeneric/g_game.h, progs/doomgeneric/i_system.h, progs/doomgeneric/i_timer.h, progs/doomgeneric/i_video.h, progs/doomgeneric/m_argv.h, progs/doomgeneric/m_menu.h, progs/doomgeneric/m_misc.h, progs/doomgeneric/w_checksum.h, progs/doomgeneric/w_wad.h

progs/doomgeneric/deh_main.h

Depends on: progs/doomgeneric/deh_str.h, progs/doomgeneric/doomfeatures.h, progs/doomgeneric/doomtype.h, progs/doomgeneric/sha1.h Imported by: progs/doomgeneric/am_map.c, progs/doomgeneric/d_main.c, progs/doomgeneric/d_net.c, progs/doomgeneric/f_finale.c, progs/doomgeneric/g_game.c, progs/doomgeneric/hu_stuff.c, progs/doomgeneric/m_menu.c, progs/doomgeneric/p_doors.c, progs/doomgeneric/p_inter.c, progs/doomgeneric/p_saveg.c, progs/doomgeneric/p_setup.c, progs/doomgeneric/p_spec.c, progs/doomgeneric/p_switch.c, progs/doomgeneric/r_data.c, progs/doomgeneric/r_draw.c, progs/doomgeneric/r_things.c, progs/doomgeneric/st_lib.c, progs/doomgeneric/st_stuff.c, progs/doomgeneric/wi_stuff.c

progs/doomgeneric/deh_str.h

Depends on: progs/doomgeneric/doomfeatures.h Imported by: progs/doomgeneric/d_iwad.c, progs/doomgeneric/deh_main.h, progs/doomgeneric/i_input.c, progs/doomgeneric/i_system.c, progs/doomgeneric/m_misc.c, progs/doomgeneric/s_sound.c, progs/doomgeneric/v_video.c

progs/doomgeneric/doom.h

progs/doomgeneric/doomgeneric.c

Depends on: progs/doomgeneric/doomgeneric.h

progs/doomgeneric/doomgeneric.h

Imported by: progs/doomgeneric/doomgeneric.c, progs/doomgeneric/doomgeneric_minios.c, progs/doomgeneric/doomgeneric_sdl.c, progs/doomgeneric/doomgeneric_soso.c, progs/doomgeneric/doomgeneric_sosox.c, progs/doomgeneric/doomgeneric_win.c, progs/doomgeneric/doomgeneric_xlib.c, progs/doomgeneric/i_input.c, progs/doomgeneric/i_minios_sound.c, progs/doomgeneric/i_timer.c, progs/doomgeneric/i_video.c

Next: API_p11.md

Start

Wiki

Agent Docs

Recipes

Clone this wiki locally