Synchronet now requires the libarchive development package (e.g. libarchive-dev on Debian-based Linux distros, libarchive.org for more info) to build successfully.

  1. 10 May, 2021 3 commits
    • Deucе's avatar
      Numerous changes: · 634c8763
      Deucе authored
      Clamp coordinate translation max
      Fill using native pattern, not scaled pattern
      Add a bad, broken, and slow even/odd fill
      Fix logging when RIP is enabled
      Use the same ellipse algorithm for partial as full ellipses
      Detect diagonal movement in ellipse drawing and don't make the edge fat
      Only recurse once in the flood fill
      Implement the v2 poly bezier command
      Enable filled pie slices
      Add RIP_POINT command (basically a scaled pixel using line width)
      634c8763
    • Rob Swindell's avatar
      Don't allow duplicate extended and normal descriptions · e0d937bb
      Rob Swindell authored
      If the extended description and the normal (short) description are the same,
      delete the extended (long) description.
      e0d937bb
    • Rob Swindell's avatar
      Add option to control whether area-linked nodes must be configured · 9afeb9ea
      Rob Swindell authored
      This should address issue # 261.
      Before April 19, 2016, area-linked nodes were required to be listed as nodes in sbbsecho.ini:
      http://cvs.synchro.net/cgi-bin/viewcvs.cgi/src/sbbs3/sbbsecho.c?revision=3.6&view=markup
      I'm not sure why the change was made to only require that there be a wildmatch for each area-linked node. So just make it a configuration option. <shrug>
      
      Also removed the trailing "..." for every top level menu item in echocfg.
      9afeb9ea
  2. 08 May, 2021 1 commit
  3. 07 May, 2021 2 commits
    • Rob Swindell's avatar
      Change CRLF before batch flag prompt to a conditional new-line. · a9214ac4
      Rob Swindell authored
      If a sysop wants a *blank* line before the batch flag prompt, they can put that (or a conditional blank line, even better) in their text.dat (BatchFlagPrompt). For now, I'm thinking no blank line before the prompt is better use of the screen.
      a9214ac4
    • Deucе's avatar
      More improvements... · 19f0c215
      Deucе authored
      Consistently use map_rip_color()
      Optimize flood fill to not clobber the stack
      Fix small full ellipses to match RIPTerm 1.54
      19f0c215
  4. 06 May, 2021 1 commit
  5. 05 May, 2021 6 commits
  6. 04 May, 2021 5 commits
  7. 03 May, 2021 4 commits
  8. 02 May, 2021 6 commits
    • Rob Swindell's avatar
      Insert conditional-newlines (Ctrl-A/) to force line-wraps on >80 col terminals · 32df7843
      Rob Swindell authored
      Apparently these menu files were created exactly 80 columns wide. <shrug>
      
      This fixes issue 257 reported by Keyop.
      32df7843
    • Deucе's avatar
      Optimize color_value() and fix RIP reset · 75bd66f1
      Deucе authored
      color_value() is in the hot drawing path, so should be as fast
      as possible... remove all the bit shifting and have the palette
      just be colour values.
      
      For RIP, the reset wasn't resetting the global coordinates, so a
      scaled image would cause everything to be scaled down later.
      75bd66f1
    • Deucе's avatar
      Add save/resotore mouse fields commands. · 1075cd28
      Deucе authored
      Used extensively on Black Flag BBS.
      1075cd28
    • Rob Swindell's avatar
      Add a 'readd_always' option to the update() method · 24bf49ea
      Rob Swindell authored
      This will cause archive file contents to be re-captured/added
      24bf49ea
    • Rob Swindell's avatar
      JSDOC updates · 63a2631f
      Rob Swindell authored
      Finally document the file-meta-object properties now that things are solidifying.
      63a2631f
    • Rob Swindell's avatar
      Store contents (list) of archive files in filebase (in the "msg tail") · 5374a113
      Rob Swindell authored
      This will allow fast/easy display of archive contents without actually reading the archive files.
      
      Introduces some new functions:
      - list_archive_contents()
      - smb_adddfile_withlist()
      
      A new SMB convenience variable ("tail", aliased as "content" for a file).
      A new file detail level ("file_detail_content", exposed in JS as FileBase.DETAIL.CONTENTS) which adds a "content" array property to file metadata objects for JS FileBase.get().
      
      Files already added to the new filebases won't have this archive content automatically - I'm looking into that now (likely a new or updated JS script to run).
      5374a113
  9. 01 May, 2021 4 commits
  10. 30 Apr, 2021 3 commits
    • Deucе's avatar
      Implement disabled text for RIP. · b9d43a4c
      Deucе authored
      We still need to pass ANSI through to the parser though because
      Synchronet goes apeshit if it doesn't get a response to a location
      request... it tries twice and eats any data it receives that isn't
      a valid position report, which obviously breaks menus.
      
      It's also very weird that on Booch's BBS at least it's sent during
      the main menu display rather than just on answering.  Not sure why
      this is, but it means we can't implement the RIP requirement of
      "ignoring all non-RIPscrip bytes" with a zero window without digging
      deep into Synchronet guts.
      b9d43a4c
    • Deucе's avatar
      Remove debug, optimize · 2c23c1a3
      Deucе authored
      Generate conversion tables rather than do float math twice for each
      virtual pixel.
      2c23c1a3
    • Deucе's avatar
      Start of minimal RIPv2 support. · 730c3242
      Deucе authored
      Just the easy stuff (scaling, extended colours, border toggle, filled
      rectangle)
      730c3242
  11. 29 Apr, 2021 1 commit
  12. 28 Apr, 2021 1 commit
    • Rob Swindell's avatar
      Add a separate "area tag" string configured per sub-board · fa0a154e
      Rob Swindell authored
      According to  Lupine Furmen (FURFOL):
      It says in the help that the field is used for both the Newsgroup name AND the
      Fido Echo-tag.
      
      These really should be 2 different fields.
      
      Now, the echo/area tag is usually configured in the area file (areas.bbs) and so does not need to match *any* string configured in SCFG. But since an area file *can* be generated from SCFG (Export Areas option) and its possible to use SBBSecho withOUT an area file at all, then it's possible someone would like to have their FidoNet-style area tags configured different from any other strings related to a sub-board (e.g. newsgroup name) - why? I'm not clear, but there it is: another string that  a sysop can set (or not).
      
      Since I'd recently added an area tag field per directory for use by hatchit.js, this does create some logical symmetry. And there were enough free bytes per-sub in the msgs.cnf, so why not.
      fa0a154e
  13. 27 Apr, 2021 3 commits