- Apr 29, 2023
-
-
Deucе authored
-
Deucе authored
-
Deucе authored
Instead, only delete it if the size has changed since the last frame. This should make things snappier.
-
Deucе authored
While we're here, eliminate some explicit int64_t usage. (not sure why uifc_winmode_t is signed since it's a bitfield, but that's above my pay grade).
-
Deucе authored
This caused double-keys on those when numlock was off. Only the number keys and period need special NumLock handling. Fixes bug 108 on SourceForge, thanks nelgin!
-
Deucе authored
Add setwinsize and setwinpos Move blit from rect into gdi_thread Add beep support Add (non-functional) settitle support Support ciolib scaling in addition to GDI scaling Add window-size snapping Support -iG in SyncTERM GDI is still the second-least preferred mode, so auto mode will only use it if the windows console somehow fails. But at least people can play with it.
-
Rob Swindell authored
The trigger was this line in the recent change to guru.dat: Unrealized potential. :-( That open paren was parsed as the beginning of a new guru expression. A very long guru expression that overflowed the stack variable 'str' here.
-
Deucе authored
-
Deucе authored
Add setwinsize and setwinpos Move blit from rect into gdi_thread Add beep support Add (non-functional) settitle support
-
Deucе authored
When running Windows 11 in a VirtualBox VM, Sleep(1) appears to take much more than 1ms to return. This causes large delays drawing menus using WIN_DYN (as SyncTERM does). If WIN_DYN is set, just use kbhit() with no delay. Leave the delay there for !WIN_DYN though. This should generally speed up SyncTERM menu navigation as there was a 50ms delay for each menu on the screen.
-
Deucе authored
-
Deucе authored
-
Deucе authored
-
Deucе authored
-
- Apr 28, 2023
-
-
Rob Swindell authored
unresolved external symbol _try_gdi_init referenced in function initciolib Function is dependent on WITH_GDI, not _WIN32
-
Deucе authored
There was a lot of weird things going on to avoid locking vstatlock inside of screenlock. Simply this by copying needed vstat stuff while we hold the lock.
-
Deucе authored
Also, get SyncTERM to stop displaying (null) as the mode. Video is very slow in the menus, and the input appears to repeat forever when connected (but *not* in the menus), but it's something at least.
-
Rob Swindell authored
You can see some of these is in a msg_hdr.field_list, but these you won't: - SMB_GROUP (never added by anything) - RFC822MSGID (already represented by the id property) - RFC822REPLYID (already represented by the reply_id property)
-
Deucе authored
-
Deucе authored
This will allow a "true" Windows native version, and hopefully be at least as good as SDL mode so I can relegate that to a backup.
-
- Apr 27, 2023
-
-
Rob Swindell authored
DDMsgReader: In MsgHdrPropIsKludgeLine(), removed checks for X-FTN-* fields, since those shouldn't exist See merge request !289
-
Stephen Hurd authored
Some Linux systems ship with a reentrant ncurses library that does not have an ESCDELAY variable. For now, simply don't allow control over ESCDELAY on the systems since we also currently have a global, and so can't use set_escdelay() as intended. Also, in ripper, stub out all the stuff that's used when HAS_VSTAT is not defined. This makes most of the code not compiled when it's useless anyway.
-
- Apr 26, 2023
-
-
Deucе authored
This works around an issue on macOS and Linux where a select() or poll() in thread X won't return when close() is called on the same socket in thread Y. We also set the descriptor/handle/whatever to an invalid value while waiting for io threads to terminate so that a close() in one thread won't cause other threads to possibly interact with a new descriptor created after the close(). This isn't actually something that can happen in SyncTERM, but it's worth protecting against. Finally, don't call close() until after all io threads have terminated. This prevents the descriptor from becoming available to other syscalls while threads are closing, and prevents operations on an invalid descriptor. This is still not safe on platforms where a descriptor value write is not atomic, but I don't think I support any platform like that. Reported as #212 in github, and 75 on SourceForge.
-
Deucе authored
RIP initialization was trying to obtain a lock that only exists when using a bitmap console. Don't allow RIP to be enabled, and don't perform the operations that require the lock when the CONIO_OPT_SET_PIXEL ciolib option is not set.
-
Eric Oulashin authored
DDMsgReader: In MsgHdrPropIsKludgeLine(), removed checks for X-FTN-* fields, since those shouldn't exist
-
Rob Swindell authored
DDMsgReader: When viewing message headers, now shows all available message header values See merge request !288
-
-
Deucе authored
-
Deucе authored
-
Deucе authored
-
Deucе authored
Hopefully nothing still builds conio as single-threaded anymore.
-
Deucе authored
-
Deucе authored
Pass the struct vmem_cell to bitmap_draw_one_char() rather than having it rummage in vmem for it since the caller invariable has it available.
-
- Apr 25, 2023
- Apr 24, 2023
-
-
Deucе authored
A bit more cleanup here would be good, but I think this is pushed down enough finally.
-
Deucе authored
We only really ever treat it as a single lock, so we may as well simplify this.
-
Deucе authored
This lock has devolved into a wrapper lock for vstatlock.
-
Deucе authored
Use pthread_once() for init_mouse() instead of a global Fix some lock issues in cb_drawrect()
-
Deucе authored
update_pixels should only be set when at least one pixel has actually been changed... setting it when pixels have not been changed causes unneeded screen updates. Previously, a font change asserted (incorrectly) that the pixels in the screen had been modified, so the change would occur at the end of the next blink cycle when alt fonts are checked. Now it requests a full redraw from vmem when a font is changed, which will trigger a redraw the next time the blinker thread triggers (~5ms).
-