• src/conio/retro.c

    From Deuc¿@VERT to Git commit to main/sbbs/master on Mon Jan 27 23:12:27 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/eeab6b6ba32155a4f479a8a2
    Modified Files:
    src/conio/retro.c
    Log Message:
    Don't export keyval

    Win32CIO already does that.
    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Mon Jan 27 23:12:27 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/357a25b9c61ccfb4e08eeb72
    Modified Files:
    src/conio/retro.c
    Log Message:
    Derp, map the raw key too.
    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Mon Jan 27 23:20:49 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/30b7b398ddb65a571425feb6
    Modified Files:
    src/conio/retro.c
    Log Message:
    Heh, fix codes over 255 as well.
    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Tue Jan 28 09:43:17 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/157943e0d781cb2d1c8e4160
    Modified Files:
    src/conio/retro.c
    Log Message:
    Call exit() rather than sleep forever in retro_deinit()

    This doesn't fix anything since calling exit() from a DLL is
    nonsense, but at least it's less wrong than just waiting forever.

    Also, when main() returns, tell the frontent to shut down.

    It's most likely that this ends up causing the frontend to crash,
    but if the stars align, it may exit instead.
    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Tue Jan 28 09:44:44 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/476e4f1e8359f76429e015ae
    Modified Files:
    src/conio/retro.c
    Log Message:
    Don't call video_cb() if it's NULL
    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Tue Jan 28 09:45:37 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/768558d40ea65f772c297ef6
    Modified Files:
    src/conio/retro.c
    Log Message:
    Don't call env cb if it's NULL
    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Tue Sep 8 21:25:38 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/4d6dbfa2ad4ea3c65e270dab
    Modified Files:
    src/conio/retro.c
    Log Message:
    conio/retro.c: fix zero-length array and implicit bsearch declaration

    rid[] was declared with an empty initializer, giving it zero elements.
    GCC rejects that outright ("zero or negative size array 'rid'"), so the
    file has never compiled with WITH_RETRO under GCC; MSVC accepts it in the
    front end and then dies with an internal compiler error in its /Od
    back-end pass (C1001 in p2\main.cpp). Give the array the terminating
    element libretro expects.

    retro_keyboard() called bsearch() without including <stdlib.h>, so it was implicitly declared as returning int and its result truncated to 32 bits
    before being stored in a pointer. Include the header, and qualify the
    result const to match the table it points into.

    retro_kbhit() returned a size_t as int; the value is bounded by
    KEYBUFSIZE, so make the narrowing explicit.

    rid[] and the bsearch call arrived in 9df61ba29f (2025-01-28),
    retro_kbhit() in ba963b522c (2025-01-27).

    Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net