Giter Club home page Giter Club logo

ecwolf's Introduction

ECWolf

ECWolf is a port of the Wolfenstein 3D engine based of Wolf4SDL. It combines the original Wolfenstein 3D engine with the user experience of ZDoom to create the most user and mod author friendly Wolf3D source port.

Like ZDoom, ECWolf aims to support all games which use the Wolfenstein 3D engine including Blake Stone (coming in ECWolf 3.0), Corridor 7, Operation Body Count, Rise of the Triad, and Super 3D Noah's Ark. ECWolf will also support Macintosh Wolfenstein 3D along with all of its user created missions (coming in ECWolf 2.0).

  • Single binary runs all supported games. (Wolfenstein 3D, Spear of Destiny, ...)
  • Full support for high resolution modes with aspect ratio correction including wide screen support.
  • Modern control schemes (WASD + mouse).
  • Mac Wolf/S3DNA/ROTT style automap.
  • Unlimited save slots.
  • This is actually based on the Wolf3D engine instead of a recreation or forcing into a more modern engine.
    • Software rendered using the same 8-bit ray casting.

Mod authoring

  • Create mods without working with the source code!
    • Mods work with all supported platforms including Windows, Mac OS X, and Linux.
  • Arbitrary high resolution texture, flat, and sprite support.
  • Unlimited simultaneous moving pushwalls.
  • Unlimited things.
  • Unrestricted map size. (Although technical limits restrict GAMEMAPS format to 181x181.)
  • Uses scripting formats and data formats similar to those of ZDoom.
    • Doom editing utilities work with ECWolf. (Except for levels)

Note that until ECWolf 2.0, while radical changes are not excepted, backwards compatibility for mods will not necessarily be kept. See the wiki for more information.

Links

ecwolf's People

Contributors

blzut3 avatar bslenul avatar christianhaitian avatar garbear avatar inactive123 avatar kalbert312 avatar kevans91 avatar libretroadmin avatar littleampton avatar mallo15 avatar neuralstunner avatar ny00123 avatar phcoder avatar plattinator avatar ploggy avatar robloach avatar rohit-n avatar vilhelmgray avatar webgeek1234 avatar xaseracheron avatar yoshisuga avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ecwolf's Issues

No scroll wheel support?

Hello! Normally I'd use the number keys, but for a game with only 3 weapons, it'd be really convenient to be able to use the mouse wheel to change weapons. If this has already been considered or has been asked a bunch I apologize!

Segfault on close content

Haven't tried on any other devices yet, but the core crashes 90% of the time on close content on Windows 10, here's the GDB output, hope it can help:

Thread 1 received signal SIGSEGV, Segmentation fault.
FName::GetChars (this=0x2b8b6b13f74) at ../../src/name.h:61
61              const char *GetChars() const { return NameData.NameArray[Index].Text; }
(gdb) bt full
#0  FName::GetChars (this=0x2b8b6b13f74) at ../../src/name.h:61
No locals.
#1  0x00007ff9a4a6551f in DObject::~DObject (this=0x2b8bc673630,
    __in_chrg=<optimized out>) at ../../src/dobject.cpp:265
        probe = 0x0
        type = 0x2b8b6b13f60
        probe = <optimized out>
        type = <optimized out>
#2  0x00007ff9a4a9bf90 in DCanvas::~DCanvas (this=0x2b8bc673630,
    __in_chrg=<optimized out>) at ../../src/v_video.cpp:99
        probe = <optimized out>
        prev = <optimized out>
#3  0x00007ff9a4a9c7c3 in DSimpleCanvas::~DSimpleCanvas (this=0x2b8bc673630,
    __in_chrg=<optimized out>) at ../../src/v_video.cpp:362
No locals.
#4  0x00007ff9a4b848a5 in DFrameBuffer::~DFrameBuffer (this=0x2b8bc673630,
    __in_chrg=<optimized out>) at ../../src/v_video.h:345
No locals.
#5  0x00007ff9a4b8b595 in LibretroFBBase::~LibretroFBBase (
    this=0x2b8bc673630, __in_chrg=<optimized out>)
    at ../../src/libretro/libretro.cpp:117
No locals.
#6  0x00007ff9a4b7d24a in LibretroFB<unsigned short>::~LibretroFB (
    this=0x2b8bc673630, __in_chrg=<optimized out>)
    at ../../src/libretro/libretro.cpp:146
No locals.
#7  0x00007ff9a4b85815 in LibretroFB16::~LibretroFB16 (this=0x2b8bc673630,
    __in_chrg=<optimized out>) at ../../src/libretro/libretro.cpp:243
No locals.
#8  0x00007ff9a4b857b7 in LibretroFB16::~LibretroFB16 (this=0x2b8bc673630,
    __in_chrg=<optimized out>) at ../../src/libretro/libretro.cpp:243
No locals.
#9  0x00007ff9a4aba3d6 in retro_unload_game ()
    at ../../src/libretro/libretro.cpp:422
No locals.
#10 0x00007ff7199288be in core_unload_game () at runloop.c:4963
        runloop_st = 0x7ff71aaca4e0 <runloop_state>
#11 0x00007ff719928b28 in runloop_event_deinit_core () at runloop.c:5048
        video_st = 0x7ff71ab35760 <video_driver_st>
        runloop_st = 0x7ff71aaca4e0 <runloop_state>
        settings = 0x2b8aa704b90
#12 0x00007ff719915faa in command_event (cmd=CMD_EVENT_CORE_DEINIT, data=0x0)
    at retroarch.c:2353
        hwr = 0x7ff71ab39920 <video_driver_st+16832>
        video_st = 0x7ff71ab35760 <video_driver_st>
        sys_info = 0x7ff71aaced50 <runloop_state+18544>
        boolean = false
        p_rarch = 0x7ff71aac0060 <rarch_st>
        runloop_st = 0x7ff71aaca4e0 <runloop_state>
        uico_st = 0x7ff71aae8840 <uico_driver_st>
        access_st = 0x7ff71aaca280 <access_state_st>
        menu_st = 0x7ff71ab92360 <menu_driver_state>
        video_st = 0x7ff71ab35760 <video_driver_st>
        settings = 0x2b8aa704b90
        recording_st = 0x7ff71aae88c0 <recording_state>
#13 0x00007ff71991cf52 in retroarch_ctl (state=RARCH_CTL_MAIN_DEINIT,
    data=0x0) at retroarch.c:5671
        input_st = 0x7ff71ab1e280 <input_driver_st>
        p_rarch = 0x7ff71aac0060 <rarch_st>
        runloop_st = 0x7ff71aaca4e0 <runloop_state>
#14 0x00007ff71994f9c5 in content_load (info=0xe53effb9b0,
    p_content=0x7ff71aacac58 <runloop_state+1912>)
    at tasks/task_content.c:1447
        i = 0
        success = false
        rarch_argc = 8
        rarch_argv = {0x2b8aa76e910 "retroarch", 0x2b8aa783040 "--menu",
          0x2b8aa783080 "-s",
          0x2b8aa7830c0 "G:\\msys64\\home\\B-S\\ra_build\\saves",
          0x2b8aa783120 "-S",
          0x2b8aa783160 "G:\\msys64\\home\\B-S\\ra_build\\states",
          0x2b8aa7831c0 "-c",
          0x2b8aa783200 "G:\\msys64\\home\\B-S\\ra_build\\retroarch.cfg",
          0x0 <repeats 24 times>}
        argv_copy = {0x2b8aa76e910 "retroarch", 0x2b8aa783040 "--menu",
          0x2b8aa783080 "-s",
          0x2b8aa7830c0 "G:\\msys64\\home\\B-S\\ra_build\\saves",
          0x2b8aa783120 "-S",
          0x2b8aa783160 "G:\\msys64\\home\\B-S\\ra_build\\states",
          0x2b8aa7831c0 "-c",
          0x2b8aa783200 "G:\\msys64\\home\\B-S\\ra_build\\retroarch.cfg",
          0x0 <repeats 24 times>}
        rarch_argv_ptr = 0xe53effb650
        rarch_argc_ptr = 0xe53effb758
        wrap_args = 0x2b8aa782fd0
#15 0x00007ff719950666 in task_push_start_dummy_core (
    content_info=0xe53effb9b0) at tasks/task_content.c:1966
        content_ctx = {
          name_ips = 0x2b8b6be84e0 "C:\\dosbox\\wolf3d\\ecwolf.ips",
          name_bps = 0x2b8bd3afea0 "C:\\dosbox\\wolf3d\\ecwolf.bps",
          name_ups = 0x2b8bd3afef0 "C:\\dosbox\\wolf3d\\ecwolf.ups",
          valid_extensions = 0x0, directory_cache = 0x0,
          directory_system = 0x2b8bd3aff40 "G:\\msys64\\home\\B-S\\ra_build\\system", subsystem = {data = 0x0, size = 0}, block_extract = false,
          need_fullpath = false, set_supports_no_game_enable = false,
          is_ips_pref = false, is_bps_pref = false, is_ups_pref = false,
          patch_is_blocked = false, bios_is_missing = false,
          check_firmware_before_loading = false}
        p_content = 0x7ff71aacac58 <runloop_state+1912>
        ret = true
        settings = 0x2b8aa704b90
        runloop_st = 0x7ff71aaca4e0 <runloop_state>
        sys_info = 0x7ff71aaced50 <runloop_state+18544>
        path_dir_system = 0x2b8aa733c5e "G:\\msys64\\home\\B-S\\ra_build\\system"
        check_firmware_before_loading = false
#16 0x00007ff71991528d in command_event (cmd=CMD_EVENT_UNLOAD_CORE, data=0x0)
    at retroarch.c:1951
        load_dummy_core = true
        content_info = {argv = 0x0, args = 0x0,
          environ_get = 0x7ff71994fb3f <menu_content_environment_get>,
          argc = 0}
        sys_info = 0x7ff71aaced50 <runloop_state+18544>
        contentless = false
        is_inited = true
        global = 0x7ff71aaca2a0 <global_driver_st>
        boolean = false
        p_rarch = 0x7ff71aac0060 <rarch_st>
        runloop_st = 0x7ff71aaca4e0 <runloop_state>
        uico_st = 0x7ff71aae8840 <uico_driver_st>
        access_st = 0x7ff71aaca280 <access_state_st>
        menu_st = 0x7ff71ab92360 <menu_driver_state>
        video_st = 0x7ff71ab35760 <video_driver_st>
        settings = 0x2b8aa704b90
        recording_st = 0x7ff71aae88c0 <recording_state>
#17 0x00007ff719cd5473 in generic_menu_entry_action (userdata=0x2b8abaa5750,
    entry=0xe53effecd0, i=0, action=MENU_ACTION_NOOP)
    at menu/menu_driver.c:8132
        deferred_path = 0x2b8aba9f718 "C:\\dosbox\\wolf3d\\ecwolf.exe"
        flush_target = 0x7ff71a332539 <enable_device_vibration+65335> "deferred_rpl_entry_actions"
        stack_offset = 1
        reset_navigation = true
        content_path = 0x7ff71aac2270 <rarch_st+8720> ""
        ret = 0
        menu_st = 0x7ff71ab92360 <menu_driver_state>
        menu_driver_ctx = 0x7ff71a305700 <menu_ctx_ozone>
        menu = 0x2b8aba976e0
        settings = 0x2b8aa704b90
        menu_userdata = 0x2b8abaa5750
        wraparound_enable = true
        scroll_mode = false
        scroll_accel = 0
        menu_list = 0x2b8abaeebe0
        selection_buf = 0x2b8aba92c40
        menu_stack = 0x2b8aba8e350
        selection_buf_size = 8
        cbs = 0x2b8b6da8210
        accessibility_enable = false
        accessibility_narrator_speech_speed = 5
        access_st = 0x7ff71aaca280 <access_state_st>
#18 0x00007ff719c653e0 in ozone_menu_entry_action (userdata=0x2b8abaa5750,
    entry=0xe53effecd0, i=0, action=MENU_ACTION_NOOP)
    at menu/drivers/ozone.c:7820
        new_entry = {entry_idx = 0, idx = 0, type = 0, spacing = 1073742336,
          enum_idx = 1073742400,
          path = "\000\000\000\000\b\000\000\000p▒▒>▒\000\000\000▒`▒▒▒\177\000\000▒\f\031\006▒\003\000\000\020=m▒▒\002\000\000\000\000\000\000\000\000\000\000\215^▒▒▒\177\000\000@\002\000@\001\000\000\000\001", '\000' <repeats 47 times>, "p▒▒>▒\000\000\000\020=m▒▒\002\000\000Rը▒▒\177\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\220\064h▒▒\002\000\000\220\064h▒▒\002\000\000\000\000\000\000▒", '\000' <repeats 11 times>, "\t▒▒^S\000\000\070\000\000\000LGVN"...,
          label = "\000\004▒▒▒\177\000\000\001\000\000\000\000\000\000\000\001", '\000' <repeats 11 times>, "\001\000\000\000\000\000P▒▒\002\000\000\000\000\000\000\000\000\000\000ܰ▒▒\177\000\000\001", '\000' <repeats 31 times>, "\001▒\230\032▒\177\000\000\000\016_▒▒\002\000\000\001\000\000\000\000\000\000\000;`Re▒\177\000\000\000ʚ;\000\000\000\000\020\021\n▒▒\002\000\000▒▒▒▒▒▒▒▒!▒▒▒\177\000\000▒\003\000\000\000\000\000\000y\005▒▒\177\000\000\065▒\230\032▒\177\000\000\001\000\000\000▒\002\000\000\000ʚ;\000\000\000\000▒[of▒\177\000\000"..., sublabel = "\000\000▒>▒\031▒\177\000\000▒\000\000\000\000\000\000\000\060▒▒>▒\000\000\000\200\002\000\000\000\000\000\000▒\000\000\000\000\000\000\000▒▒▒▒▒▒▒▒0y▒▒▒\002\000\000\220\064h▒▒\002\000\000V▒ݦ▒\177\000\000`▒Q▒▒\002\000\000s[of▒\177\000\000\000\000\000\000\000\000\000\000\220\064h▒▒\002\000\000\200\002\000\000\002\000\000\000h▒▒\032▒\177\000\000▒▒▒>▒\000\000\000▒E▒\031▒\177\000\000▒▒▒\032▒\177\000\000`▒Q▒▒\002\000\000x▒▒>▒\000\000\000`W▒\032▒\177\000\000 ▒▒>▒\000\000\000▒▒▒\031▒\177\000\000\220▒▒>▒\000\000\000\200\000\000\000▒\002"...,
          rich_label = "\000\000I▒g▒\177\000\000*", '\000' <repeats 15 times>, "\001\000\000\000▒\002\000\000\000\000\000\000\000\000\000\000+", '\000' <repeats 15 times>, "\200\025\177▒▒\002\000\000 \201▒▒▒\002", '\000' <repeats 11 times>, "\005\000\000▒\002\000\000\001\000\000\000\000\000\000\000 ▒▒>▒", '\000' <repeats 19 times>, "\004", '\000' <repeats 39 times>, "\001\000\000\000\005\000\000\000`\"▒▒▒\002\000\000\001\000\000\000▒\177\000\000▒▒▒>▒", '\000' <repeats 11 times>...,
          value = "\000\000\000 ", '\000' <repeats 23 times>, "`▒Q▒▒\002\000\000.=▒\031▒\177\000\000▒\023▒▒▒\002\000\000@\024▒▒▒\002\000\000\000\000\000\000\000\000\000\000/\000\000\000\002\000\000\000▒\024▒▒▒\002\000\000▒\024▒▒▒\002\000\000\b\025▒▒▒\002\000\000▒\023▒▒▒\002\000\000\024▒\000\000\002\000\000\000\001\000\000\000\000\000\001\000d▒▒>▒\000\000\000▒\002\000\000\000\005\000\000▒\000\000\000\000\000\000\000\003\000\000\000\000\000\000\000▒▒▒>▒\000\000\000▒_▒\031▒\177\000\000▒▒▒>▒\000\000\000▒Q▒▒▒\002\000\000▒\000\000\000\000\000\000\000`\034\201▒▒"...,
          password_value = "▒\000\000\000F\231\230\031\000\177\000\000\000\020▒▒▒\002\000\000`\034\201▒▒\002\000\000@\001\000\000\000\000\000\000▒\000\000\000▒\000\000\000o\000\000\000\000\000\000\000\200\002\000\000▒\000\000\000\000▒▒\032▒\177\000\000▒▒▒>▒", '\000' <repeats 11 times>, "▒▒▒g▒\177\000\000\000\000P▒▒\002\000\000c\000\000P", '\000' <repeats 20 times>, " \020▒▒▒\002", '\000' <repeats 26 times>, " \020▒▒▒\002\000\000\000\000P▒▒\002\000\000 \020▒▒▒\002\000\000\001", '\000' <repeats 15 times>, "\030\001▒"..., checked = 168,
          path_enabled = 184, label_enabled = 2, rich_label_enabled = false,
          value_enabled = false, sublabel_enabled = 32}
        ozone = 0x2b8abaa5750
        entry_ptr = 0xe53effecd0
        settings = 0x2b8aa704b90
        selection = 0
        new_action = MENU_ACTION_NOOP
        new_selection = 0
#19 0x00007ff719ccdb2c in menu_entry_action (entry=0xe53effecd0, i=0,
    action=MENU_ACTION_NOOP) at menu/menu_driver.c:4388
        menu_st = 0x7ff71ab92360 <menu_driver_state>
#20 0x00007ff719cd404b in generic_menu_iterate (
    menu_st=0x7ff71ab92360 <menu_driver_state>,
    p_disp=0x7ff71ab3af60 <dispgfx_st>, p_anim=0x7ff71ab3b080 <anim_st>,
    settings=0x2b8aa704b90, menu=0x2b8aba976e0, userdata=0x2b8abaa5750,
    action=MENU_ACTION_NOOP, current_time=4566176292)
    at menu/menu_driver.c:7691
        entry = {entry_idx = 0, idx = 0, type = 7, spacing = 0,
          enum_idx = MENU_ENUM_LABEL_RUN,
          path = "Run", '\000' <repeats 37 times>, "▒▒ ▒=▒\000\000$▒▒>▒\000\000\000\001\000\000\000\004\000\000\000\t\000\000\000\000\000\000\000\230>\n\200\001\000\000\000▒4▒g▒\177", '\000' <repeats 18 times>, "\200▒X▒▒\002\000\000\060▒P▒▒\002\000\000\000\000\000\000\000\000\000\000▒\002▒g▒\177\000\000▒4\000\200\001\000\000\000p▒▒>▒\000\000\000\200▒X▒▒\002\000\000\000\000\000\000\000\000\000\000\001\000\000\000▒\002\000\000tS\004#▒", '\000' <repeats 11 times>, "\002\000\004\006▒\177\000\000"...,
          label = "collection\000▒▒▒\002\000\000I▒g▒\177\000\000▒\002▒▒▒\002\000\000\000\000\000\000\000\000\000\000\001\025\004\200\001\000\000\000\177\000\000\000\001\000\000\000`ؾ▒▒\002\000\000\003\002\000\000\000\000\000\000\060\000\000\000\000\000\000\000_▒g▒\177\000\000\000\000▒▒▒\002\000\000\071▒▒>▒\000\000\000▒ؾ▒▒\002\000\000\000\000\000\000\001\000\000\000\177\000\000\000▒\002\000\000\003\002\000\000\000\000\000\000\000▒▒>▒\000\000\000\005\000\000\000\000\000\000\000\004▒▒>▒\000\000\000 \037▒▒▒\002", '\000' <repeats 18 times>, "\020\037▒▒▒\002\000\000\005\000\000\000▒\177\000\000"...,
          sublabel = "\000\000▒▒ۂ\001\000\000\000▒\023\004\200\001\000\000\000\177\000\000\000\000\000\000\000\004\b\000\000\000\000\000\000`#▒\032▒\177\000\000\006\000\000\000\000\000\000\000\005\000\000\000\000\000\000\000▒▒▒▒▒\002\000\000\200▒\032▒\177\000\000 \003▒▒▒\002\000\000P\001▒▒▒\002\000\000▒7\004▒▒\000\000\000\005\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\060\000\000\000\000\000\000\000\033\000\000\000▒\177\000\000\000\000▒>▒\000\000\000\020پ▒▒\002\000\000w\230▒g▒\177\000\000n module C:\\WIND`\025\061\032▒\177\000\000EM32\\v\000\000kan-1.dlP\000\000\000\000\000\000\000"...,
          rich_label = '\000' <repeats 18 times>, "\215▒▒f▒\177\000\000\070▒▒>▒\000\000\000\070\000\000\000_\000\000\000▒▒▒>▒\000\000\000`▒▒\031▒\177\000\000▒C▒▒▒\002\000\000\000\000\000\000▒\000\000\000▒▒\000\000▒\002\000\000`▒▒\032▒\177\000\000\000▒▒>▒\000\000\000▒Y▒\031▒\177\000\000\004\000\000\000▒\000\000\000▒▒\200?▒\177\000\000 ▒0\032▒\177\000\000\004\000\000\000\000\177\000\000▒▒▒▒\000\000\000\000\000\000\000\000▒\000\000\000`▒\032▒\177\000\000\000\000\000\000▒▒▒▒\004\000\000\000▒\002\000\000\001\000\000\000▒\177\000\000▒▒▒▒▒▒▒▒\200-▒\032▒\177"...,
          value = "\000\000\000\000\000\000\000\026\000\000\000\200▒▒>▒\000\000\000A▒▒\031▒\177\000\000▒C▒▒▒\002\000\000\000\000\000\000\004\000\000\000`\000\000@", '\000' <repeats 12 times>, " ▒\032▒\177\000\000\020\000\000\000\000\000\000\000▒▒▒>▒\000\000\000▒O▒\031▒\177\000\000▒C▒▒▒\002\000\000 ▒0\032\000\177\000\000\000\000\000\000\000\000\000\000\200▒▒>▒\000\000\000`▒\032▒\177", '\000' <repeats 18 times>, "\001\000\000\000▒\000\000\000\000\000\000\000\004\000\000\000S", '\000' <repeats 23 times>, "▒▒▒▒\000\000\000\000▒▒\000\000\000\000\000\000\000\000\000"...,
          password_value = "\000\002\000\000D▒▒\031▒\177\000\000\200▒\032▒\177\000\000S\000\000\000▒\002\000\000p▒▒>▒", '\000' <repeats 11 times>, "▒▒▒>▒\000\000\000▒▒▒\031▒\177\000\000▒C▒▒▒\002\000\000 ▒0\032▒\177\000\000\000\000\000\000\000\000\000\000▒▒▒>▒", '\000' <repeats 15 times>, "\002\000\000\000\000\000\000\000▒\177\000\000\002\000\000\000\003\000\000\000\000\000\000\000▒\177\000\000\a\000\000\000\004\000\000\000\000▒\032\001\177\000\000\001#\000\000\000\000\000\000`▒Q▒▒\002\000\000.=▒\031▒\177\000\000▒C▒▒▒\002\000\000 ▒0\032▒\177", '\000' <repeats 18 times>..., checked = false, path_enabled = true,
          label_enabled = true, rich_label_enabled = false,
          value_enabled = false, sublabel_enabled = false}
        menu_list = 0x2b8abaeebe0
        selection = 0
        menu_list_size = 8
        last_iterate_type = ITERATE_TYPE_DEFAULT
        access_st = 0x7ff71aaca280 <access_state_st>
        accessibility_enable = false
        accessibility_narrator_speech_speed = 5
        iterate_type = ITERATE_TYPE_DEFAULT
        ret = 0
        label = 0x2b8b69163a0 "deferred_rpl_entry_actions"
        list = 0x2b8aba8e350
#21 0x00007ff719cd5562 in menu_driver_iterate (
    menu_st=0x7ff71ab92360 <menu_driver_state>,
    p_disp=0x7ff71ab3af60 <dispgfx_st>, p_anim=0x7ff71ab3b080 <anim_st>,
    settings=0x2b8aa704b90, action=MENU_ACTION_NOOP, current_time=4566176292)
    at menu/menu_driver.c:8163
No locals.
#22 0x00007ff71992c5dc in runloop_check_state (error_on_init=false,
    settings=0x2b8aa704b90, current_time=4566176292) at runloop.c:6886
        action = MENU_ACTION_NOOP
        old_action = MENU_ACTION_OK
        menu_st = 0x7ff71ab92360 <menu_driver_state>
        focused = true
        trigger_input = {data = {0, 0, 0, 0, 0, 0, 0, 0}, analogs = {0, 0, 0,
            0, 0, 0, 0, 0}, analog_buttons = {0 <repeats 16 times>}}
        screensaver_timeout = 0
        old_input = {data = {9, 0, 0, 0, 0, 0, 0, 0}, analogs = {0, 0, 0, 0,
            0, 0, 0, 0}, analog_buttons = {0 <repeats 16 times>}}
        current_bits = {data = {0, 0, 0, 0, 0, 0, 0, 0}, analogs = {0, 0, 0,
            0, 0, 0, 0, 0}, analog_buttons = {0 <repeats 16 times>}}
        last_input = {data = {0, 12288, 0, 0, 0, 0, 0, 0}, analogs = {0, 0,
            0, 0, 0, 0, 0, 0}, analog_buttons = {0 <repeats 16 times>}}
        uico_st = 0x7ff71aae8840 <uico_driver_st>
        input_st = 0x7ff71ab1e280 <input_driver_st>
        video_st = 0x7ff71ab35760 <video_driver_st>
        p_disp = 0x7ff71ab3af60 <dispgfx_st>
        runloop_st = 0x7ff71aaca4e0 <runloop_state>
        old_focus = true
        cbs = 0x7ff71aacabb8 <runloop_state+1752>
        is_focused = true
        is_alive = true
        frame_count = 112
        focused = true
        rarch_is_initialized = true
        runloop_paused = false
        pause_nonactive = true
        quit_gamepad_combo = 0
        menu_st = 0x7ff71ab92360 <menu_driver_state>
        menu = 0x2b8aba976e0
        menu_toggle_gamepad_combo = 0
        menu_driver_binding_state = false
        menu_is_alive = true
        display_kb = false
        widgets_active = true
        cheevos_hardcore_active = false
#23 0x00007ff71992e856 in runloop_iterate () at runloop.c:7676
        i = 0
        dpad_mode = {ANALOG_DPAD_NONE, ANALOG_DPAD_NONE, ANALOG_DPAD_NONE,
          ANALOG_DPAD_NONE, ANALOG_DPAD_NONE, 32759, 2827091968, 696,
          446228021, 32759, 2858356336, 696, 1738779040, 32762, 1718574000,
          32762}
        input_st = 0x7ff71ab1e280 <input_driver_st>
        audio_st = 0x7ff71aaf5c00 <audio_driver_st>
        video_st = 0x7ff71ab35760 <video_driver_st>
        recording_st = 0x7ff71aae88c0 <recording_state>
        camera_st = 0x7ff71aae8860 <camera_driver_st>
        settings = 0x2b8aa704b90
        runloop_st = 0x7ff71aaca4e0 <runloop_state>
        video_frame_delay = 0
        video_frame_delay_effective = 0
        vrr_runloop_enable = false
        max_users = 5
        current_time = 4566176292
        menu_pause_libretro = true
        core_paused = true
        slowmotion_ratio = 3
        cheevos_enable = false
        audio_sync = true
        discord_st = 0x7ff71abe7180 <discord_state_st>
#24 0x00007ff719918983 in rarch_main (argc=1, argv=0x2b8a8540930, data=0x0)
    at retroarch.c:3859
        ret = 0
        app_exit = false
        p_rarch = 0x7ff71aac0060 <rarch_st>
        runloop_st = 0x7ff71aaca4e0 <runloop_state>
        video_st = 0x7ff71ab35760 <video_driver_st>
#25 0x00007ff719b63257 in SDL_main (argc=1, argv=0x2b8a8540930)
    at ui/drivers/ui_qt.cpp:4318
No locals.
#26 0x00007ff71a0e2126 in main_getcmdline ()
No symbol table info available.
#27 0x00007ff7199113ae in __tmainCRTStartup ()
    at C:/M/mingw-w64-crt-git/src/mingw-w64/mingw-w64-crt/crt/crtexe.c:329
        lock_free = <optimized out>
        fiberid = <optimized out>
        nested = <optimized out>
        lpszCommandLine = <optimized out>
        StartupInfo = {cb = 104, lpReserved = 0x2b8a8519650 "",
          lpDesktop = 0x2b8a853b680 "Winsta0\\Default",
          lpTitle = 0x2b8a853e8b0 "G:\\msys64\\home\\B-S\\ra_build\\retroarch_debug.exe", dwX = 0, dwY = 0, dwXSize = 0, dwYSize = 0, dwXCountChars = 0,
          dwYCountChars = 0, dwFillAttribute = 0, dwFlags = 0,
          wShowWindow = 0, cbReserved2 = 0, lpReserved2 = 0x0,
          hStdInput = 0xffffffffffffffff, hStdOutput = 0xffffffffffffffff,
          hStdError = 0xffffffffffffffff}
        inDoubleQuote = <optimized out>
#28 0x00007ff7199114c6 in WinMainCRTStartup ()
    at C:/M/mingw-w64-crt-git/src/mingw-w64/mingw-w64-crt/crt/crtexe.c:176
        ret = 255

No idea if this is related or not but I get this in the terminal on close content:

[INFO] [Core]: Unloading game..
Warning: 'DFrameBuffer' is freed outside the GC process.

Missing libretro.h

UILD/ecwolf-master/src/libretro/libretro_core_options.h:7:22: fatal error: libretro.h: No such file or directory
Build error.

Smooth movement, possible?

Hi there, @phcoder !

I have built this core for the first time on the Raspberry Pi 3 (ARM64 kernel & libs), and it works!
However, movement is very spasmodic, while standalone ECWOLF moves very smooth on this machine if internal resolutoin is set at 320x200 and I pass -noadaptive parameter.
In this core, I have tried different FPS settings. 60FPS should be smooth, but it looks like 35 anyway (which is not smooth at all on a 60Hz display).
Any other cores are smooth here.

ecwolf crash with "Wolfenstein 3D HD" mod

Hi, ecwolf crash with "Wolfenstein 3D HD" mod. It works with ECWOLF.EXE.

It comes from the core which crash due to audio sample that he don't like...
I have re-encoded the sound files in the mod pack with this little Windows batch :

md out
for %%a in (*.wav) do (
  echo processing %%a
 ffmpeg -i "%%a" -acodec pcm_u8 -ac 1 -ar 11025 -filter:a "volume=0.5" "out\%%~na.wav" 
)

It doesn't crash anymore but the sound is saturated.
If you want to make a try the modified mod file is here.

May be I'm missing something on the required audio sample for ecwolf core ?

Can be reproduced on linux arm and Windows x86 devices.

(Related to this Onion OS Ports issue)

Fails to build on Linux

Hey I just wanted to report that it fails to build on Linux and I noticed the only instructions was on a website as well as being outdated.

[ 95%] Building CXX object src/CMakeFiles/engine.dir/wl_play.cpp.o
/mnt/Storage/projects/ecwolf/src/id_sd.cpp:45:17: note: ‘#pragma message: Not using customized SDL_mixer. Features will be disabled. https://bitbucket.org/ecwolf/sdl_mixer-for-ecwolf’
   45 | #pragma message "Not using customized SDL_mixer. Features will be disabled. https://bitbucket.org/ecwolf/sdl_mixer-for-ecwolf"
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 95%] Building CXX object src/CMakeFiles/engine.dir/wl_game.cpp.o
[ 96%] Building CXX object src/CMakeFiles/engine.dir/wl_main.cpp.o
[ 96%] Building CXX object src/CMakeFiles/engine.dir/sdlvideo.cpp.o
[ 97%] Building CXX object src/CMakeFiles/engine.dir/wl_text.cpp.o
[ 97%] Building CXX object src/CMakeFiles/engine.dir/wl_inter.cpp.o
[ 98%] Building CXX object src/CMakeFiles/engine.dir/wl_net.cpp.o
[ 99%] Building CXX object src/CMakeFiles/engine.dir/dosbox/dbopl.cpp.o
[ 99%] Building CXX object src/CMakeFiles/engine.dir/posix/i_main.cpp.o
[100%] Linking CXX executable ../ecwolf
/usr/bin/ld: CMakeFiles/engine.dir/sndinfo.cpp.o: in function `Mix_ChunkDeleter::Mix_ChunkDeleter(Mix_Chunk*)':
sndinfo.cpp:(.text+0x114): undefined reference to `Mix_FreeChunk'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `musicFinished()':
id_sd.cpp:(.text+0x6a): undefined reference to `Mix_HaltMusic'
/usr/bin/ld: id_sd.cpp:(.text+0x79): undefined reference to `Mix_FreeMusic'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `SD_UpdateMusicVolume(int)':
id_sd.cpp:(.text+0xe5): undefined reference to `Mix_VolumeMusic'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `SD_StopDigitized()':
id_sd.cpp:(.text+0x777): undefined reference to `Mix_HaltChannel'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `SD_SetPosition(int, int, int)':
id_sd.cpp:(.text+0x80c): undefined reference to `Mix_SetPanning'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `SD_PrepareSound(int)':
id_sd.cpp:(.text+0xcda): undefined reference to `Mix_LoadWAV_RW'
/usr/bin/ld: id_sd.cpp:(.text+0xd08): undefined reference to `Mix_LoadWAV_RW'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `SD_PlayDigitized(SoundData const&, int, int, SoundChannel)':
id_sd.cpp:(.text+0xdf4): undefined reference to `Mix_GroupAvailable'
/usr/bin/ld: id_sd.cpp:(.text+0xe07): undefined reference to `Mix_GroupOldest'
/usr/bin/ld: id_sd.cpp:(.text+0xe1a): undefined reference to `Mix_GroupAvailable'
/usr/bin/ld: id_sd.cpp:(.text+0xe91): undefined reference to `Mix_Volume'
/usr/bin/ld: id_sd.cpp:(.text+0xea7): undefined reference to `Mix_PlayChannel'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `SDL_StartSB()':
id_sd.cpp:(.text+0x1a08): undefined reference to `Mix_OpenAudio'
/usr/bin/ld: id_sd.cpp:(.text+0x1a39): undefined reference to `Mix_CloseAudio'
/usr/bin/ld: id_sd.cpp:(.text+0x1a64): undefined reference to `Mix_QuerySpec'
/usr/bin/ld: id_sd.cpp:(.text+0x1b14): undefined reference to `Mix_ReserveChannels'
/usr/bin/ld: id_sd.cpp:(.text+0x1b28): undefined reference to `Mix_GroupChannels'
/usr/bin/ld: id_sd.cpp:(.text+0x1be6): undefined reference to `Mix_SetPostMix'
/usr/bin/ld: id_sd.cpp:(.text+0x1bf5): undefined reference to `Mix_ChannelFinished'
/usr/bin/ld: id_sd.cpp:(.text+0x1c2a): undefined reference to `Mix_VolumeMusic'
/usr/bin/ld: id_sd.cpp:(.text+0x1c39): undefined reference to `Mix_HookMusicFinished'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `SD_Startup()':
id_sd.cpp:(.text+0x1dad): undefined reference to `Mix_SetSoundFonts'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `SD_MusicOff()':
id_sd.cpp:(.text+0x228e): undefined reference to `Mix_PlayingMusic'
/usr/bin/ld: id_sd.cpp:(.text+0x229d): undefined reference to `Mix_PauseMusic'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `SD_StartMusic(char const*)':
id_sd.cpp:(.text+0x23c1): undefined reference to `Mix_FreeMusic'
/usr/bin/ld: id_sd.cpp:(.text+0x24a9): undefined reference to `Mix_LoadMUS_RW'
/usr/bin/ld: id_sd.cpp:(.text+0x25ea): undefined reference to `Mix_PlayMusic'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `SD_ContinueMusic(char const*, int)':
id_sd.cpp:(.text+0x281b): undefined reference to `Mix_FreeMusic'
/usr/bin/ld: id_sd.cpp:(.text+0x290b): undefined reference to `Mix_LoadMUS_RW'
/usr/bin/ld: id_sd.cpp:(.text+0x2aea): undefined reference to `Mix_PausedMusic'
/usr/bin/ld: id_sd.cpp:(.text+0x2b0f): undefined reference to `Mix_ResumeMusic'
/usr/bin/ld: id_sd.cpp:(.text+0x2b31): undefined reference to `Mix_PlayMusic'
/usr/bin/ld: CMakeFiles/engine.dir/id_sd.cpp.o: in function `SD_MusicPlaying()':
id_sd.cpp:(.text+0x2c2d): undefined reference to `Mix_PlayingMusic'
/usr/bin/ld: id_sd.cpp:(.text+0x2c36): undefined reference to `Mix_PausedMusic'
/usr/bin/ld: CMakeFiles/engine.dir/wl_net.cpp.o: in function `Net::SendAck(IPaddress, int)':
wl_net.cpp:(.text+0x3f6): undefined reference to `SDLNet_UDP_Send'
/usr/bin/ld: CMakeFiles/engine.dir/wl_net.cpp.o: in function `Net::StartHost(bool (*)(FString))':
wl_net.cpp:(.text+0x463): undefined reference to `SDLNet_UDP_Open'
/usr/bin/ld: wl_net.cpp:(.text+0x583): undefined reference to `SDLNet_UDP_Recv'
/usr/bin/ld: wl_net.cpp:(.text+0x88b): undefined reference to `SDLNet_UDP_Send'
/usr/bin/ld: wl_net.cpp:(.text+0x949): undefined reference to `SDLNet_UDP_Recv'
/usr/bin/ld: CMakeFiles/engine.dir/wl_net.cpp.o: in function `Net::StartJoin(bool (*)(FString))':
wl_net.cpp:(.text+0xa6f): undefined reference to `SDLNet_UDP_Open'
/usr/bin/ld: wl_net.cpp:(.text+0xbd5): undefined reference to `SDLNet_ResolveHost'
/usr/bin/ld: wl_net.cpp:(.text+0xcf4): undefined reference to `SDLNet_UDP_Send'
/usr/bin/ld: wl_net.cpp:(.text+0xd0d): undefined reference to `SDLNet_UDP_Recv'
/usr/bin/ld: CMakeFiles/engine.dir/wl_net.cpp.o: in function `Net::Shutdown()':
wl_net.cpp:(.text+0xf04): undefined reference to `SDLNet_FreePacket'
/usr/bin/ld: wl_net.cpp:(.text+0xf13): undefined reference to `SDLNet_UDP_Close'
/usr/bin/ld: CMakeFiles/engine.dir/wl_net.cpp.o: in function `Net::Init(bool (*)(FString))':
wl_net.cpp:(.text+0xf31): undefined reference to `SDLNet_Init'
/usr/bin/ld: wl_net.cpp:(.text+0xf3d): undefined reference to `SDLNet_GetError'
/usr/bin/ld: wl_net.cpp:(.text+0xf5e): undefined reference to `SDLNet_AllocPacket'
/usr/bin/ld: CMakeFiles/engine.dir/wl_net.cpp.o: in function `Net::PollControls()':
wl_net.cpp:(.text+0x135b): undefined reference to `SDLNet_UDP_Send'
/usr/bin/ld: wl_net.cpp:(.text+0x1721): undefined reference to `SDLNet_UDP_Recv'
collect2: error: ld returned 1 exit status
make[2]: *** [src/CMakeFiles/engine.dir/build.make:2263: ecwolf] Error 1
make[1]: *** [CMakeFiles/Makefile2:379: src/CMakeFiles/engine.dir/all] Error 2
make: *** [Makefile:156: all] Error 2

[Suggestion] Add Wolf3D's Main menu, options and save features

This is probably already in the to-do listed, but I wanted to create an issue report to keep track of it.
Basically, re-implement the original Wolfenstein 3D main menu, its options menu and the save/loading slots feature as well.

Wolf3D

I am not sure if this was added into the original ECWolf and is pending on the libretro port or not, but I wanted to leave this for tracking.

ECWolf crashes console (Nintendo Switch running Atmosphere CFW)

Upon trying to load a vanilla release of Wolfenstein 3D by selecting the ECWolf core, and then the Wolf3D.exe executable with all of Wolf3D's files in the same folder through RetroArch in a hacked Nintendo Switch, the console's custom firmware (Atmosphere) crashes and forces a reboot of the console.

A similar result occurs when trying to load Spear of Destiny through it (spear.exe/wolf3D.exe)
The same thing happens with both the DOS and GOG releases of both games.

The only version which seems to boot fine is the shareware release of Wolfenstein 3D, grabbed from the buildbot.

The ECWolf.pk3 is located inside /retroarch/cores/system, and also (to be sure) it is also located within the same folder as each game (Wolf3D/SoD).

Strafe button missing

Hi,
in mapping menu (PORT 1 CONTROLS), we have the buttons :

  • strafe left
  • strafe right
  • strafe +
  • strafe -
    But there is not a strafe button. It is a button we have to maintain with a direction to strafe in this direction.
    For example, if i maintain the strafe button and i go left, the guy have to strafe left.
    In PrDoom we have this button for example so it could be possible in RetroArch and in this port too.
    Thank you

Playlist with Wolfenstein 3D mods

I would like to create a playlist with best Wolfenstein mods. Please let me know how to create one. I read that I need to use "Subsystem" > "Load with 2 packs" option. When I choose this option and choose mod pk3 file information appears "main game - additional file". What should I do next. When I start wolf.exe standard game starts without mod.

How to play mods using "Subsystem" and how to create playlist. I know how to create playlist in RA but how to choose mods pk3 in playlist file?

Can't load SOD mission packs

Hi! Thanks for working on the core, having WOLF within RA with shader support it's great!
Well, as the title says, SOD mission packs won't load, it loads default SOD. Tried renaming the SD1, SD2, SD3 files to .SOD to see if I could fool the core into passing them as the regular game, but still loads the base SOD content.

Versioning scheme

Well could you start to use versions like Major.Minor.Patch for your releases?

Some automap options don't seem to work properly + core options not applied on launch + disable pause on intro screens and menus?

Hey, sorry if it's a bit soon to report bugs since it's a WIP core, but I didn't see any mention of these in the "Known glitches" in the news post.

  • Show map as overlay: "On" and "Off" work fine, "On + Normal" only shows overlay, it supposed to show overlay then on a 2nd press the normal automap.
  • Textured floors in automap: doesn't work, floor is still the same grey as when the option is "Off".
  • Textured Overlay in automap: doesn't work, walls are still green.
  • Pause game in automap: "Off" doesn't work, you can't move the normal map and you can't move the character while overlay map is open.
  • Not a glitch but I think Pause button should act as Fire button during the intro screens and menus.

edit: also it looks like core options are not applied on startup, you have to switch an option (doesn't seem to matter which one) before they're applied. e.g. if you have "Always run" set to ON, when you start the game the character will not run until you switch any core options, same with "Screen size", etc.

edit2: maybe not every core options, resolution and framerate options seem to stick for example.

Tested on both Windows 10 and a Linux VM, latest core and RA nightlies.

Semi-Random Crashing to Desktop

Description:
When playing the Wolf3D, I experience some CTDs either in the very beginning once I leave the cell or when I take the elevator down to end a level, as well as just randomly during the first level. I've seen to have this problem since the release of ECWolf for Retroarch.

Troubleshooting:

  • Tried both ecwolf.pk3 in the game folder or the bios folder
  • Set the video output plugin to GL, Vulkan, DX9, and SDL2 (Vulkan had least crashes)
  • Multiple resolutions (lower the less crashing)
  • Running ECWolf natively without RetroArch is fine.

Platform:
OS: Microsoft Windows 11 Pro (10.0.22000 N/A Build 22000)
Videocard: Nvidia 3070 (512.95)
RetroArch: 1.10.2

image

ECWolf Mods

Can ECWolf mods can be played somehow with ecwolf libretro core?

ECWolf crashes

Hi, my ECWolf core crashes all the time, and i don't understand why. I have tried on multiple installs (AppImage and Flatpak install).

The full game release wont launch and just crashes when i try to launch the game from playlist and the shareware version starts up, but crashed after minute or two.

Here is the log ( or at least i think i got the right log?):

[INFO] [Environ]: SET_SUBSYSTEM_INFO.

[INFO] Subsystem ID: 0

Special game type: Load with 1 packs

Ident: multipack-1

ID: 1

Content:

[INFO] Main pack (required)

[INFO] Subsystem ID: 1

Special game type: Load with 2 packs

Ident: multipack-2

ID: 2

Content:

[INFO] Main pack (required)

[INFO] Additional pack 1 (optional)

[INFO] Subsystem ID: 2

Special game type: Load with 3 packs

Ident: multipack-3

ID: 3

Content:

[INFO] Main pack (required)

[INFO] Additional pack 1 (optional)

[INFO] Additional pack 2 (optional)

[INFO] Subsystem ID: 3

Special game type: Load with 4 packs

Ident: multipack-4

ID: 4

Content:

[INFO] Main pack (required)

[INFO] Additional pack 1 (optional)

[INFO] Additional pack 2 (optional)

[INFO] Additional pack 3 (optional)

[INFO] Subsystems: 4

[INFO] [Core]: Using content: "/mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/downloads/Wolfenstein 3D v1.4 (Shareware)/GAMEMAPS.WL1".

[INFO] [Core]: Content ran for a total of: 00 hours, 00 minutes, 00 seconds.

[INFO] [Core]: Unloading core..

[INFO] [Core]: Unloading core symbols..

[INFO] [XINERAMA]: Xinerama version: 1.1.

[INFO] [XINERAMA]: Xinerama screens: 2.

[INFO] [XINERAMA]: Saved monitor #0.

[INFO] [Video]: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.

[INFO] RetroArch 1.10.3 (Git e8d5c0d)

[INFO] === Build =======================================

[INFO] CPU Model Name: Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz

[INFO] Ominaisuudet: MMX MMXEXT SSE SSE2 SSE3 SSSE3 SSE4 SSE4.2 AES AVX

[INFO] Built: Jun 8 2022

[INFO] Version: 1.10.3

[INFO] Git: e8d5c0d

[INFO] =================================================

[INFO] [Input]: Found input driver: "x".

[INFO] [Core]: Loading dynamic libretro core from: "/mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/cores/ecwolf_libretro.so"

[INFO] [Overrides]: No core-specific overrides found at "/mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/config/ecwolf/ecwolf.cfg".

[INFO] [Overrides]: No content-dir-specific overrides found at "/mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/config/ecwolf/Wolfenstein 3D v1.4 (Shareware).cfg".

[INFO] [Overrides]: No game-specific overrides found at "/mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/config/ecwolf/GAMEMAPS.cfg".

[INFO] [Environ]: SET_SUBSYSTEM_INFO.

[INFO] Special game type: Load with 1 packs

Ident: multipack-1

ID: 1

Content:

[INFO] Main pack (required)

[INFO] Special game type: Load with 2 packs

Ident: multipack-2

ID: 2

Content:

[INFO] Main pack (required)

[INFO] Additional pack 1 (optional)

[INFO] Special game type: Load with 3 packs

Ident: multipack-3

ID: 3

Content:

[INFO] Main pack (required)

[INFO] Additional pack 1 (optional)

[INFO] Additional pack 2 (optional)

[INFO] Special game type: Load with 4 packs

Ident: multipack-4

ID: 4

Content:

[INFO] Main pack (required)

[INFO] Additional pack 1 (optional)

[INFO] Additional pack 2 (optional)

[INFO] Additional pack 3 (optional)

[INFO] [Environ]: SET_SUPPORT_NO_GAME: no.

[INFO] [Environ]: GET_LOG_INTERFACE.

[INFO] [Environ]: GET_CORE_OPTIONS_VERSION.

[INFO] [Environ]: GET_LANGUAGE: "23".

[INFO] [Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_INTL.

[INFO] [Environ]: SET_INPUT_DESCRIPTORS:

[INFO] RetroPad, Port 1, Button "B (bottom)" => "Use"

[INFO] RetroPad, Port 1, Button "Select" => "Map"

[INFO] RetroPad, Port 1, Button "Start" => "Pause"

[INFO] RetroPad, Port 1, Button "D-Pad Up" => "Forward"

[INFO] RetroPad, Port 1, Button "D-Pad Down" => "Backwards"

[INFO] RetroPad, Port 1, Button "D-Pad Left" => "Left"

[INFO] RetroPad, Port 1, Button "D-Pad Right" => "Right"

[INFO] RetroPad, Port 1, Button "A (right)" => "Fire"

[INFO] RetroPad, Port 1, Button "X (up)" => "Run"

[INFO] RetroPad, Port 1, Button "L" => "Strafe Left"

[INFO] RetroPad, Port 1, Button "R" => "Strafe Right"

[INFO] RetroPad, Port 1, Button "L2" => "Previous weapon"

[INFO] RetroPad, Port 1, Button "R2" => "Next weapon"

[INFO] [Environ]: GET_VFS_INTERFACE. Core requested version >= V3, providing V3.

[INFO] [Remaps]: Remap directory: "/mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/config/remaps".

[INFO] [Overrides]: Uudelleenohjataan tallennustiedosto kohteeseen "/mnt/data1/retroarch/saves/GAMEMAPS.srm".

[INFO] [Overrides]: Uudelleenohjataan pelitilan tallennus kohteeseen "/mnt/data1/retroarch/states/GAMEMAPS.state".

[INFO] [Content]: Sisällön lataus ohitettu. Toteutus lataa sen itse.

[INFO] [Environ]: GET_VARIABLE: ecwolf-memstore = "disabled"

[INFO] [Environ]: GET_VARIABLE: ecwolf-preload-digisounds = "enabled"

[INFO] [Environ]: GET_VARIABLE: ecwolf-resolution = "320x200"

[libretro INFO] Got size: 320 x 200.

[INFO] [Environ]: GET_VARIABLE: ecwolf-fps = "35"

[libretro INFO] Got FPS: 35.0.

[INFO] [Environ]: GET_VARIABLE: ecwolf-palette = "rgb565"

[INFO] [Environ]: SET_GEOMETRY: 320x200, Aspect: 0.000.

[INFO] [Environ]: GET_VARIABLE: ecwolf-alwaysrun = "disabled"

[INFO] [Environ]: GET_VARIABLE: ecwolf-analog-deadzone = "15%"

[INFO] [Environ]: GET_VARIABLE: ecwolf-viewsize = "20"

[INFO] [Environ]: GET_VARIABLE: ecwolf-am-overlay = "off"

[INFO] [Environ]: GET_VARIABLE: ecwolf-am-rotate = "off"

[INFO] [Environ]: GET_VARIABLE: ecwolf-am-drawtexturedwalls = "disabled"

[INFO] [Environ]: GET_VARIABLE: ecwolf-am-drawtexturedfloors = "disabled"

[INFO] [Environ]: GET_VARIABLE: ecwolf-am-texturedoverlay = "disabled"

[INFO] [Environ]: GET_VARIABLE: ecwolf-am-showratios = "disabled"

[INFO] [Environ]: GET_VARIABLE: ecwolf-am-pause = "disabled"

[INFO] [Environ]: GET_VARIABLE: ecwolf-music-volume = "20"

[INFO] [Environ]: GET_VARIABLE: ecwolf-adlib-volume = "20"

[INFO] [Environ]: GET_VARIABLE: ecwolf-speaker-volume = "20"

[INFO] [Environ]: GET_VARIABLE: ecwolf-digi-volume = "20"

[INFO] [Environ]: GET_VARIABLE: ecwolf-analog-move-sensitivity = "20"

[INFO] [Environ]: GET_VARIABLE: ecwolf-analog-turn-sensitivity = "20"

[INFO] [Environ]: GET_VARIABLE: ecwolf-effects-priority = "digi-adlib-speaker"

[INFO] [Environ]: GET_VARIABLE: ecwolf-invulnerability = "disabled"

[INFO] [Environ]: GET_VARIABLE: ecwolf-dynamic-fps = "disabled"

[INFO] [Environ]: GET_VARIABLE: ecwolf-aspect = "auto"

[INFO] [Environ]: GET_VARIABLE: ecwolf-panx-adjustment = "5"

[INFO] [Environ]: GET_VARIABLE: ecwolf-pany-adjustment = "5"

[INFO] [Environ]: SET_PIXEL_FORMAT: RGB565.

[INFO] [Environ]: SET_FRAME_TIME_CALLBACK.

[libretro INFO] IWad: Selecting base game data.

[INFO] [Environ]: SYSTEM_DIRECTORY: "/mnt/data1/retroarch/system".

[libretro INFO] Using asset mapping "WL1map"

[libretro INFO] W_Init: Init WADfiles.

[libretro INFO] adding /mnt/data1/retroarch/system/ecwolf.pk3

[libretro INFO] , 72 lumps

[libretro INFO] adding /mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/downloads/Wolfenstein 3D v1.4 (Shareware)/AUDIOT.WL1

[libretro INFO] , 288 lumps

[libretro INFO] adding /mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/downloads/Wolfenstein 3D v1.4 (Shareware)/GAMEMAPS.WL1

[libretro INFO] , 20 lumps

[libretro INFO] adding /mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/downloads/Wolfenstein 3D v1.4 (Shareware)/VGAGRAPH.WL1

[libretro INFO] , 156 lumps

[libretro INFO] adding /mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/downloads/Wolfenstein 3D v1.4 (Shareware)/VSWAP.WL1

[libretro INFO] , 588 lumps

[libretro INFO] adding /mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/downloads/Wolfenstein 3D v1.4 (Shareware)/GAMEMAPS.WL1

[libretro INFO] , 20 lumps

[libretro INFO] InitGame: Setting up the game...

[libretro INFO] VL_ReadPalette: Setting up the Palette...

[libretro INFO] ClassDef: Loading actor definitions.

[libretro INFO] S_Init: Reading SNDINFO defintions.

[libretro INFO] S_Init: Reading SNDSEQ defintions.

[libretro INFO] US_Startup: Starting the User Manager.

[libretro INFO] CreateMenus: Preparing the menu system...

[libretro INFO] Warning: 'DObject' is freed outside the GC process.

[libretro INFO] Clearing random...

[libretro INFO] Game setup finished...

[INFO] [SRAM]: Ohitetaan SRAM-lataus.

[INFO] [Core]: libretro-API:n versio: 1, Koottu vastaamaan API: 1

[INFO] [Audio]: Set audio input rate to: 44100.00 Hz.

[INFO] [Video]: Timings deviate too much. Will not adjust. (Display = 60.00 Hz, Game = 35.00 Hz)

[INFO] [Video]: Set video size to: 960x600.

[ERROR] [Wayland]: Failed to connect to Wayland server.

[INFO] [GLX]: GLX_EXT_swap_control_tear supported.

[INFO] [GL]: Found GL context: "x".

[INFO] [GL]: Detecting screen resolution: 3840x1080.

[INFO] [GLX]: Window manager is Xfwm4.

[INFO] [GLX]: X = 0, Y = 0, W = 960, H = 600.

[INFO] [GLX]: Found swap function: glXSwapIntervalEXT.

[INFO] [GL]: Vendor: NVIDIA Corporation, Renderer: NVIDIA GeForce GTX 1070/PCIe/SSE2.

[INFO] [GL]: Version: 4.6.0 NVIDIA 470.141.03.

[INFO] [GL]: Using resolution 960x600.

[INFO] [GL]: Default shader backend found: glsl.

[INFO] [Shader driver]: Using GLSL shader backend.

[INFO] [GLSL]: Checking GLSL shader support ...

[WARN] [GL]: Stock GLSL shaders will be used.

[INFO] [GLSL]: Found GLSL vertex shader.

[INFO] [GLSL]: Found GLSL fragment shader.

[INFO] [GLSL]: Linking GLSL program.

[INFO] [GLSL]: Found GLSL vertex shader.

[INFO] [GLSL]: Found GLSL fragment shader.

[INFO] [GLSL]: Linking GLSL program.

[INFO] [GLSL]: Found GLSL vertex shader.

[INFO] [GLSL]: Found GLSL fragment shader.

[INFO] [GLSL]: Linking GLSL program.

[INFO] Setting up menu pipeline shaders for XMB ...

[INFO] [GLSL]: Compiling ribbon shader..

[INFO] [GLSL]: Found GLSL vertex shader.

[INFO] [GLSL]: Found GLSL fragment shader.

[INFO] [GLSL]: Linking GLSL program.

[INFO] [GLSL]: Compiling simple ribbon shader..

[INFO] [GLSL]: Found GLSL vertex shader.

[INFO] [GLSL]: Found GLSL fragment shader.

[INFO] [GLSL]: Linking GLSL program.

[INFO] [GLSL]: Compiling snow shader..

[INFO] [GLSL]: Found GLSL vertex shader.

[INFO] [GLSL]: Found GLSL fragment shader.

[INFO] [GLSL]: Linking GLSL program.

[INFO] [GLSL]: Compiling modern snow shader..

[INFO] [GLSL]: Found GLSL vertex shader.

[INFO] [GLSL]: Found GLSL fragment shader.

[INFO] [GLSL]: Linking GLSL program.

[INFO] [GLSL]: Compiling bokeh shader..

[INFO] [GLSL]: Found GLSL vertex shader.

[INFO] [GLSL]: Found GLSL fragment shader.

[INFO] [GLSL]: Linking GLSL program.

[INFO] [GLSL]: Compiling snowflake shader..

[INFO] [GLSL]: Found GLSL vertex shader.

[INFO] [GLSL]: Found GLSL fragment shader.

[INFO] [GLSL]: Linking GLSL program.

[INFO] [GL]: Using 4 textures.

[INFO] [GL]: Loaded 1 program(s).

[INFO] [GL]: Using GL_RGB565 for texture uploads.

[DEBUG] [udev]: Couldn't open any joypads. Are permissions set correctly for /dev/input/event* and /run/udev/?

[INFO] [Joypad]: Found joypad driver: "udev".

[INFO] [Font]: Using font rendering backend: "freetype".

[INFO] [X11]: Suspending screensaver (X11, xdg-screensaver).

[INFO] [Video]: Found display server: "x11".

[INFO] [PulseAudio]: Requested 24576 bytes buffer, got 18432.

[INFO] [Display]: Found display driver: "gl".

[INFO] [Environ]: SET_SUBSYSTEM_INFO.

[INFO] Subsystem ID: 0

Special game type: Load with 1 packs

Ident: multipack-1

ID: 1

Content:

[INFO] Main pack (required)

[INFO] Subsystem ID: 1

Special game type: Load with 2 packs

Ident: multipack-2

ID: 2

Content:

[INFO] Main pack (required)

[INFO] Additional pack 1 (optional)

[INFO] Subsystem ID: 2

Special game type: Load with 3 packs

Ident: multipack-3

ID: 3

Content:

[INFO] Main pack (required)

[INFO] Additional pack 1 (optional)

[INFO] Additional pack 2 (optional)

[INFO] Subsystem ID: 3

Special game type: Load with 4 packs

Ident: multipack-4

ID: 4

Content:

[INFO] Main pack (required)

[INFO] Additional pack 1 (optional)

[INFO] Additional pack 2 (optional)

[INFO] Additional pack 3 (optional)

[INFO] Subsystems: 4

[INFO] [Playlist]: Ladataan historiatiedostoa: "/mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/content_history.lpl".

[INFO] [Playlist]: Ladataan historiatiedostoa: "/mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/content_music_history.lpl".

[INFO] [Playlist]: Ladataan historiatiedostoa: "/mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/content_image_history.lpl".

[INFO] [Playlist]: Ladataan suosikkien tiedostoa: "/mnt/data1/ohjelmat/RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/content_favorites.lpl".

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.