This tries to retain the existing behaviour of --net / --net-only
while making it easier to say "listen on only these specific ports".
If --net or --net-only is specified, network mode is enabled and
default port values are assumed for any port not otherwise specified
on the command line. Specifying a port of 0 disables that port. This
is the same as the old behavior.
If --net or --net-only is not specified, but at least one
of the --net-xxx-port options is specified, then network mode is
enabled with no default port value and only those ports explicitly
configured on the command line are used.
This means you can e.g. configure a port-30005-only SDR receiver
by specifying just "--net-bo-port 30005"; or configure a
network-receive-only receiver (e.g. for SkyAware display) by
"--device-type none --net-bi-port 30004,30104". These were possible
previously but required turning off a lot of the default ports.
Reorder --ifile pseudo-sdr after the "none" SDR so that a build with no real
SDR support defaults to "none" not --ifile
If the "none" SDR was selected and network mode is not enabled, tell the
user about the problem rather than just failing to do anything useful.
* Add URL options to hide different aspects of the default display, helpful for starting for a kiosk
* Fix spacing in changes
* More options to move map left/right/up/down
* Allow movement in all directions, consolidate some code
* Add controls for units and range rings from url
* Swap left/right,up/down behavior for map moves
* Convert #nohistory anchor tag to a query param like the other parameters. Make query parameters values explicitly state true
* Fix for enableRings so it will toggle the setting
* Use show/hide parameter values to avoid having a a showX/hideX parameter for each option, Rename some parameters, resize map when hiding banner/sidebar, cleanup
Co-authored-by: BuildTools <unconfigured@null.spigotmc.org>
Co-authored-by: eric1tran <eric1tran@gmail.com>
This is minimally tested on OSX, and not at all on *BSD.
Since I did some cleanups in the compat code without testing on *BSD,
it could well be broken there.
This may also fix#33 as #38 included those changes.
reduce dependency requirements a little.
(Ideally we'd have some sort of module system here, and split
the dependencies out nicely into separate packages, but that's a
problem for other day; for now I can live with custom packages
having the same name as the full build, since we'll never
distribute them ourselves)
On 5.x kernels with the USB mmap problems fixed, the distributed librtlsdr
will use a zero-copy mapping for USB buffers. Unfortunately, there is
something about the nature of the mapping on ARM (at least on Pis) that
makes most access to the data extremely slow. The uc8_nodc converter is
about 35x slower in this case compared to working on a heap-allocated buffer.
Luckily, a plain memcpy() of the buffer is still reasonably fast, so
we can use a bounce buffer and copy the data out of the slow mapping, then
pass the copy to the converter. This mitigates most of the problem,
at the expense of always needing that extra copy (which does somewhat
defeat the purpose of zero-copy!)
Unfortunately, librtlsdr provides no reliable way to control or
detect the use of zero-copy mappings, so we have to assume the problem
is always there (at least on ARM) and pay the cost of an unnecessary
copy when zerocopy is _not_ in use, too.
Unfortunately limesuite doesn't seem to provide an API identifier, so
we can't detect whether LMS_PATH_AUTO is supported or not. Change the
fallback to LMS_PATH_LNAW, since that appears to work on both mini
and full-fat limesdrs.
Update all the SDR implementation to use it.
This was getting pretty ugly with code getting copy&pasted in all the SDR
implementations. Unify it all and give it a simpler API. Linked list works out
much simpler than the circular buffer. Also, simplify copying the overlap region
around by just using a separate buffer (it's only a few hundred bytes long, so
the double copy is not a big deal).