BBS:      TELESC.NET.BR
Assunto:  src/conio/cg_cio.h cg_cio.m cg_events.msrc/build/Common.gmake src/coni
De:       Deuc¨
Data:     Mon, 16 Mar 2026 12:11:08 -0700
-----------------------------------------------------------
https://gitlab.synchro.net/main/sbbs/-/commit/fef47097a992813a7b89a8af
Added Files:
	src/conio/cg_cio.h cg_cio.m cg_events.m
Modified Files:
	src/build/Common.gmake src/conio/CMakeLists.txt Common.gmake GNUmakefile ciolib.adoc ciolib.c ciolib.h src/syncterm/CHANGES CMakeLists.txt COMPILING HACKING.md Manual.txt bbslist.c syncterm.c syncterm.man.in src/xpdev/CMakeLists.txt Common.gmake xpbeep.c xpbeep.h
Log Message:
Add native macOS Quartz display backend and CoreAudio sound

Replace SDL dependency on macOS with native AppKit/Core Graphics for
display and CoreAudio AudioQueue API for sound. Quartz and SDL are
mutually exclusive (both need the main thread); CMake and gmake
automatically disable SDL when Quartz is enabled.

Display backend (cg_cio.m, cg_events.m):
- NSWindow/NSView rendering via CGBitmapContext and CGContextDrawImage
- Internal scaling (xBR) with 1:1 backing pixel mapping on Retina
- External scaling via CG interpolation (no SyncTERM CPU overhead)
- vstat stores backing pixels; point conversion at NSWindow boundary
- macOS virtual keycode to AT Set 1 scancode translation
- Option = Alt for BBS keycodes; Cmd+Q/Cmd+V as macOS conventions
- Native NSMenu (SyncTERM, Edit, View) with keyboard shortcuts
- NSPasteboard clipboard, NSBitmapImageRep icon, NSCursor support
- applicationDidFinishLaunching: synchronization via semaphore
- applicationShouldTerminate: and windowShouldClose: enter quit loop

Audio backend (xpbeep.c):
- CoreAudio AudioQueue output with triple-buffered playback
- Callback-driven architecture matching existing xpbeep pattern
- Auto-detected on macOS; disable with WITHOUT_COREAUDIO

Build system:
- CMake: OBJC language, -framework Cocoa/Carbon, WITH_QUARTZ define
- gmake: .m compilation rules, framework linking, feature detection
- WITHOUT_QUARTZ option to disable; AUTO mode prefers Quartz on macOS

Co-Authored-By: Claude Opus 4.6 
n
---
  mSynchronetn  hgVertrauen n hHome of Synchronet n gh[vert/cvs/bbs].synchro.net

-----------------------------------------------------------
[Voltar]