Thanks, fixed in the attached v2: Sid2Model to Sid10Model and -sid2model to -sid10model are now listed one by one, in vice.texi and in the $VICERES list in sidsoundwidget.c. doc/checkdoc.mak no longer reports them as undocumented (it did with v1). Same base (r46281), nothing else changed.
Per-SID chip models (Sid2Model and up), resolving the FIXME in c64/psid.c
You are right that it should never happen, and the NULL does not originate where the backtrace ends. Tracing it back -- and correcting my own report -- this is not headless-specific. log_helper() declares char *nocolorpre = NULL; char *nocolortxt = NULL; and fills them only inside if ((log_to_file) || (!log_colorize)) { nocolorpre = logskipcolors(pretxt); nocolortxt = logskipcolors(logtxt); } but the stdout branch below then does if (archdep_default_logger_is_terminal() == 0) { terminalpre = nocolorpre;...
Follow-up with a stronger reproducer: because of this, a shipping commercial release cannot load its own EEPROM image. "Murder on the Mississippi Remastered" (by crystalct, who authored the Magic Desk Plus hardware) is distributed as a Magic Desk Plus CRT plus two sidecar images, exactly as section 87 prescribes: Murder on the Mississippi Remastered [ENG].crt 262720 bytes, type 87, subtype $00, 32 ROM banks of 8K at $8000, no CHIP packets at $DF00 EEPRom 8k.bin 8192 bytes SRAM 128K.bin 131072 bytes...
Headless UI: segfault at startup, log_archdep() dereferences NULL from vice_banner()
Magic Desk Plus (CRT id 87): the revision's EEPROM size is never applied, every EEPROM revision behaves as 32KiB
Magic Desk Plus (CRT id 87): cartconv and the emulator disagree about what the subtype byte means