From 75bf51072a121c56d209f5870eef93f725e4c719 Mon Sep 17 00:00:00 2001 From: Jordan Sherer Date: Thu, 4 Oct 2018 13:52:52 -0400 Subject: [PATCH] Rename to JS8Call --- APRSISClient.cpp | 4 +- CMakeCPackOptions.cmake.in | 26 +++---- CMakeLists.txt | 44 ++++++------ ...call-startup.sh => Mac-js8call-startup.sh} | 4 +- Darwin/ReadMe.txt | 4 +- ...call_DMG.DS_Store => js8call_DMG.DS_Store} | Bin README | 16 ++--- about.cpp | 14 ++-- about.ui | 2 +- .../{ft8call_icon.png => js8call_icon.png} | Bin artwork/make_graphics.sh | 32 ++++----- decodedtext.cpp | 4 +- decodedtext.h | 2 +- .../icon_128x128.png | Bin .../icon_128x128@2x.png | Bin .../icon_16x16.png | Bin .../icon_16x16@2x.png | Bin .../icon_256x256.png | Bin .../icon_256x256@2x.png | Bin .../icon_32x32.png | Bin .../icon_32x32@2x.png | Bin .../icon_512x512.png | Bin .../icon_512x512@2x.png | Bin .../{ft8call_icon.png => js8call_icon.png} | Bin icons/windows-icons/installer_logo.bmp | Bin 25818 -> 25818 bytes .../{ft8call.ico => js8call.ico} | Bin ft8call.desktop => js8call.desktop | 6 +- jsc.cpp | 2 +- jsc_list.cpp | 4 +- jsc_map.cpp | 4 +- logbook/logbook.cpp | 2 +- logqso.cpp | 10 +-- main.cpp | 2 +- mainwindow.cpp | 66 +++++++++--------- mainwindow.h | 2 +- mainwindow.ui | 10 +-- make_app.sh | 4 +- revision_utils.cpp | 4 +- varicode.cpp | 2 +- varicode.h | 8 +-- wsjtx.rc | 2 +- 41 files changed, 140 insertions(+), 140 deletions(-) rename Darwin/{Mac-ft8call-startup.sh => Mac-js8call-startup.sh} (83%) rename Darwin/{ft8call_DMG.DS_Store => js8call_DMG.DS_Store} (100%) rename artwork/{ft8call_icon.png => js8call_icon.png} (100%) rename icons/Darwin/{FT8Call.iconset => JS8Call.iconset}/icon_128x128.png (100%) rename icons/Darwin/{FT8Call.iconset => JS8Call.iconset}/icon_128x128@2x.png (100%) rename icons/Darwin/{FT8Call.iconset => JS8Call.iconset}/icon_16x16.png (100%) rename icons/Darwin/{FT8Call.iconset => JS8Call.iconset}/icon_16x16@2x.png (100%) rename icons/Darwin/{FT8Call.iconset => JS8Call.iconset}/icon_256x256.png (100%) rename icons/Darwin/{FT8Call.iconset => JS8Call.iconset}/icon_256x256@2x.png (100%) rename icons/Darwin/{FT8Call.iconset => JS8Call.iconset}/icon_32x32.png (100%) rename icons/Darwin/{FT8Call.iconset => JS8Call.iconset}/icon_32x32@2x.png (100%) rename icons/Darwin/{FT8Call.iconset => JS8Call.iconset}/icon_512x512.png (100%) rename icons/Darwin/{FT8Call.iconset => JS8Call.iconset}/icon_512x512@2x.png (100%) rename icons/Unix/{ft8call_icon.png => js8call_icon.png} (100%) rename icons/windows-icons/{ft8call.ico => js8call.ico} (100%) rename ft8call.desktop => js8call.desktop (80%) diff --git a/APRSISClient.cpp b/APRSISClient.cpp index de8b29d..87d74fd 100644 --- a/APRSISClient.cpp +++ b/APRSISClient.cpp @@ -38,7 +38,7 @@ QString APRSISClient::loginFrame(QString callsign){ auto loginFrame = QString("user %1 pass %2 ver %3\n"); loginFrame = loginFrame.arg(callsign); loginFrame = loginFrame.arg(hashCallsign(callsign)); - loginFrame = loginFrame.arg("FT8Call"); + loginFrame = loginFrame.arg("JS8Call"); return loginFrame; } @@ -210,7 +210,7 @@ void APRSISClient::enqueueSpot(QString theircall, QString grid, QString comment) if(m_localCall.isEmpty()) return; auto geo = APRSISClient::grid2aprs(grid); - auto spotFrame = QString("%1>APRS,%2,TCPIP*:=%3/%4nFT8CALL %5\n"); + auto spotFrame = QString("%1>APRS,%2,TCPIP*:=%3/%4nJS8 %5\n"); spotFrame = spotFrame.arg(theircall); spotFrame = spotFrame.arg(stripSSID(m_localCall)); spotFrame = spotFrame.arg(geo.first); diff --git a/CMakeCPackOptions.cmake.in b/CMakeCPackOptions.cmake.in index 2c39a35..4eb57ae 100644 --- a/CMakeCPackOptions.cmake.in +++ b/CMakeCPackOptions.cmake.in @@ -9,8 +9,8 @@ set (CPACK_PACKAGE_CONTACT "@PROJECT_CONTACT@") set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "@PROJECT_SUMMARY_DESCRIPTION@") set (CPACK_RESOURCE_FILE_LICENSE "@PROJECT_SOURCE_DIR@/COPYING") set (CPACK_PACKAGE_INSTALL_DIRECTORY ${CPACK_PACKAGE_NAME}) -set (CPACK_PACKAGE_EXECUTABLES ft8call "@PROJECT_NAME@") -set (CPACK_CREATE_DESKTOP_LINKS ft8call) +set (CPACK_PACKAGE_EXECUTABLES js8call "@PROJECT_NAME@") +set (CPACK_CREATE_DESKTOP_LINKS js8call) set (CPACK_STRIP_FILES TRUE) # @@ -24,7 +24,7 @@ if (CPACK_GENERATOR MATCHES "NSIS") set (CPACK_SET_DESTDIR FALSE) set (CPACK_STRIP_FILES FALSE) # breaks Qt packaging on Windows - # set (CPACK_NSIS_INSTALL_ROOT "C:\\FT8Call") + # set (CPACK_NSIS_INSTALL_ROOT "C:\\JS8Call") if(CMAKE_CL_64) set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64") @@ -38,8 +38,8 @@ if (CPACK_GENERATOR MATCHES "NSIS") # set the install/unistall icon used for the installer itself # There is a bug in NSI that does not handle full unix paths properly. - set (CPACK_NSIS_MUI_ICON "@PROJECT_SOURCE_DIR@/icons/windows-icons\\ft8call.ico") - set (CPACK_NSIS_MUI_UNIICON "@PROJECT_SOURCE_DIR@/icons/windows-icons\\ft8call.ico") + set (CPACK_NSIS_MUI_ICON "@PROJECT_SOURCE_DIR@/icons/windows-icons\\js8call.ico") + set (CPACK_NSIS_MUI_UNIICON "@PROJECT_SOURCE_DIR@/icons/windows-icons\\js8call.ico") # set the package header icon for MUI set (CPACK_PACKAGE_ICON "@PROJECT_SOURCE_DIR@/icons/windows-icons\\installer_logo.bmp") # tell cpack to create links to the doc files @@ -47,13 +47,13 @@ if (CPACK_GENERATOR MATCHES "NSIS") "@PROJECT_HOMEPAGE@" "@PROJECT_NAME@ Web Site" ) # Use the icon from wsjtx for add-remove programs - set (CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\ft8call.exe") + set (CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\js8call.exe") set (CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_DESCRIPTION_SUMMARY}") set (CPACK_NSIS_HELP_LINK "@PROJECT_HOMEPAGE@") set (CPACK_NSIS_URL_INFO_ABOUT "@PROJECT_HOMEPAGE@") set (CPACK_NSIS_CONTACT "${CPACK_PACKAGE_CONTACT}") - set (CPACK_NSIS_MUI_FINISHPAGE_RUN "ft8call.exe") + set (CPACK_NSIS_MUI_FINISHPAGE_RUN "js8call.exe") set (CPACK_NSIS_MODIFY_PATH ON) endif () @@ -66,11 +66,11 @@ endif () if ("${CPACK_GENERATOR}" STREQUAL "DragNDrop") set (CPACK_DMG_VOLUME_NAME "@PROJECT_NAME@") set (CPACK_DMG_BACKGROUND_IMAGE "@PROJECT_SOURCE_DIR@/icons/Darwin/DragNDrop Background.png") - set (CPACK_DMG_DS_STORE "@PROJECT_SOURCE_DIR@/Darwin/ft8call_DMG.DS_Store") + set (CPACK_DMG_DS_STORE "@PROJECT_SOURCE_DIR@/Darwin/js8call_DMG.DS_Store") set (CPACK_BUNDLE_NAME "@WSJTX_BUNDLE_NAME@") - set (CPACK_PACKAGE_ICON "@PROJECT_BINARY_DIR@/ft8call.icns") - set (CPACK_BUNDLE_ICON "@PROJECT_BINARY_DIR@/ft8call.icns") - set (CPACK_BUNDLE_STARTUP_COMMAND "@PROJECT_SOURCE_DIR@/Mac-ft8call-startup.sh") + set (CPACK_PACKAGE_ICON "@PROJECT_BINARY_DIR@/js8call.icns") + set (CPACK_BUNDLE_ICON "@PROJECT_BINARY_DIR@/js8call.icns") + set (CPACK_BUNDLE_STARTUP_COMMAND "@PROJECT_SOURCE_DIR@/Mac-js8call-startup.sh") set (CPACK_PACKAGING_INSTALL_PREFIX "/") endif () @@ -78,9 +78,9 @@ if ("${CPACK_GENERATOR}" STREQUAL "WIX") # Reset CPACK_PACKAGE_VERSION to deal with WiX restriction. # But the file names still use the full CMake_VERSION value: set (CPACK_PACKAGE_FILE_NAME - "${CPACK_PACKAGE_NAME}-@ft8call_VERSION@-${CPACK_SYSTEM_NAME}") + "${CPACK_PACKAGE_NAME}-@js8call_VERSION@-${CPACK_SYSTEM_NAME}") set (CPACK_SOURCE_PACKAGE_FILE_NAME - "${CPACK_PACKAGE_NAME}-@ft8call_VERSION@-Source") + "${CPACK_PACKAGE_NAME}-@js8call_VERSION@-Source") if (NOT CPACK_WIX_SIZEOF_VOID_P) set (CPACK_WIX_SIZEOF_VOID_P "@CMAKE_SIZEOF_VOID_P@") diff --git a/CMakeLists.txt b/CMakeLists.txt index 5c9f39c..6b67184 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -22,7 +22,7 @@ Change this to the newest SDK available that you can install on your system (10. Do not override this if you intend to build an official deployable installer.") endif (APPLE) -project (ft8call C CXX Fortran) +project (js8call C CXX Fortran) # # CMake policies @@ -45,11 +45,11 @@ message (STATUS "Building ${CMAKE_PROJECT_NAME}-${wsjtx_VERSION}") # # project information # -set (PROJECT_NAME "FT8Call") +set (PROJECT_NAME "JS8Call") set (PROJECT_VENDOR "Jordan Sherer, KN4CRD") set (PROJECT_CONTACT "Jordan Sherer ") set (PROJECT_COPYRIGHT "Copyright (C) 2001-2018 by Joe Taylor, K1JT, (C) 2018 by Jordan Sherer, KN4CRD") -set (PROJECT_HOMEPAGE https://groups.io/g/ft8call) +set (PROJECT_HOMEPAGE https://groups.io/g/js8call) set (PROJECT_SUMMARY_DESCRIPTION "${PROJECT_NAME} - Digital Modes for Weak Signal Communicaitons in Amateur Radio.") set (PROJECT_DESCRIPTION "${PROJECT_SUMMARY_DESCRIPTION} ${PROJECT_NAME} is a computer program designed to facilitate amateur @@ -628,7 +628,7 @@ set (all_C_and_CXXSRCS set (TOP_LEVEL_RESOURCES cty.dat - icons/Darwin/FT8Call.iconset/icon_128x128.png + icons/Darwin/JS8Call.iconset/icon_128x128.png contrib/gpl-v3-logo.svg artwork/splash.png ) @@ -1110,7 +1110,7 @@ else (${OPENMP_FOUND} OR APPLE) endif (${OPENMP_FOUND} OR APPLE) # build the main application -add_executable (ft8call MACOSX_BUNDLE +add_executable (js8call MACOSX_BUNDLE ${wsjtx_CXXSRCS} ${wsjtx_GENUISRCS} wsjtx.rc @@ -1119,10 +1119,10 @@ add_executable (ft8call MACOSX_BUNDLE ) if (WSJT_CREATE_WINMAIN) - set_target_properties (ft8call PROPERTIES WIN32_EXECUTABLE ON) + set_target_properties (js8call PROPERTIES WIN32_EXECUTABLE ON) endif (WSJT_CREATE_WINMAIN) -set_target_properties (ft8call PROPERTIES +set_target_properties (js8call PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/Darwin/Info.plist.in" MACOSX_BUNDLE_INFO_STRING "${WSJTX_DESCRIPTION_SUMMARY}" MACOSX_BUNDLE_ICON_FILE "${WSJTX_ICON_FILE}" @@ -1135,36 +1135,36 @@ set_target_properties (ft8call PROPERTIES MACOSX_BUNDLE_GUI_IDENTIFIER "org.k1jt.wsjtx" ) -target_include_directories (ft8call PRIVATE ${FFTW3_INCLUDE_DIRS}) +target_include_directories (js8call PRIVATE ${FFTW3_INCLUDE_DIRS}) if (APPLE) - target_link_libraries (ft8call wsjt_fort wsjt_cxx wsjt_qt wsjt_qtmm ${hamlib_LIBRARIES} ${FFTW3_LIBRARIES}) + target_link_libraries (js8call wsjt_fort wsjt_cxx wsjt_qt wsjt_qtmm ${hamlib_LIBRARIES} ${FFTW3_LIBRARIES}) else () - target_link_libraries (ft8call wsjt_fort_omp wsjt_cxx wsjt_qt wsjt_qtmm ${hamlib_LIBRARIES} ${FFTW3_LIBRARIES}) + target_link_libraries (js8call wsjt_fort_omp wsjt_cxx wsjt_qt wsjt_qtmm ${hamlib_LIBRARIES} ${FFTW3_LIBRARIES}) if (OpenMP_C_FLAGS) - set_target_properties (ft8call PROPERTIES + set_target_properties (js8call PROPERTIES COMPILE_FLAGS "${OpenMP_C_FLAGS}" LINK_FLAGS "${OpenMP_C_FLAGS}" ) endif () - set_target_properties (ft8call PROPERTIES + set_target_properties (js8call PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_BINARY_DIR}/fortran_modules_omp ) if (WIN32) - set_target_properties (ft8call PROPERTIES + set_target_properties (js8call PROPERTIES LINK_FLAGS -Wl,--stack,16777216 ) endif () endif () -qt5_use_modules (ft8call SerialPort) # not sure why the interface link library syntax above doesn't work +qt5_use_modules (js8call SerialPort) # not sure why the interface link library syntax above doesn't work # if (UNIX) # if (NOT WSJT_SKIP_MANPAGES) # add_subdirectory (manpages) -# add_dependencies (ft8call manpages) +# add_dependencies (js8call manpages) # endif (NOT WSJT_SKIP_MANPAGES) # if (NOT APPLE) # add_subdirectory (debian) -# add_dependencies (ft8call debian) +# add_dependencies (js8call debian) # endif (NOT APPLE) # endif (UNIX) @@ -1172,7 +1172,7 @@ qt5_use_modules (ft8call SerialPort) # not sure why the interface link library s # # installation # -install (TARGETS ft8call +install (TARGETS js8call RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT runtime BUNDLE DESTINATION . COMPONENT runtime ) @@ -1259,23 +1259,23 @@ configure_file ( if (NOT WIN32 AND NOT APPLE) - # install a desktop file so ft8call appears in the application start + # install a desktop file so js8call appears in the application start # menu with an icon install ( - FILES ft8call.desktop + FILES js8call.desktop DESTINATION /usr/share/applications #COMPONENT runtime ) install ( - FILES icons/Unix/ft8call_icon.png + FILES icons/Unix/js8call_icon.png DESTINATION /usr/share/pixmaps #COMPONENT runtime ) - execute_process(COMMAND ln -s /opt/ft8call/bin/ft8call lft8call) + execute_process(COMMAND ln -s /opt/js8call/bin/js8call ljs8call) install(FILES - ${CMAKE_BINARY_DIR}/lft8call DESTINATION /usr/bin/ RENAME ft8call + ${CMAKE_BINARY_DIR}/ljs8call DESTINATION /usr/bin/ RENAME js8call #COMPONENT runtime ) endif (NOT WIN32 AND NOT APPLE) diff --git a/Darwin/Mac-ft8call-startup.sh b/Darwin/Mac-js8call-startup.sh similarity index 83% rename from Darwin/Mac-ft8call-startup.sh rename to Darwin/Mac-js8call-startup.sh index d1a3f78..feeffa1 100644 --- a/Darwin/Mac-ft8call-startup.sh +++ b/Darwin/Mac-js8call-startup.sh @@ -1,7 +1,7 @@ #!/bin/sh WSJTX_BUNDLE="`echo "$0" | sed -e 's/\/Contents\/MacOS\/.*//'`" WSJTX_RESOURCES="$WSJTX_BUNDLE/Contents/Resources" -WSJTX_TEMP="/tmp/ft8call/$UID" +WSJTX_TEMP="/tmp/js8call/$UID" echo "running $0" echo "WSJTX_BUNDLE: $WSJTX_BUNDLE" @@ -13,4 +13,4 @@ export "DYLD_LIBRARY_PATH=$WSJTX_RESOURCES/lib" export "PATH=$WSJTX_RESOURCES/bin:$PATH" #export -exec "$WSJTX_RESOURCES/bin/ft8call" +exec "$WSJTX_RESOURCES/bin/js8call" diff --git a/Darwin/ReadMe.txt b/Darwin/ReadMe.txt index ed55951..df24657 100644 --- a/Darwin/ReadMe.txt +++ b/Darwin/ReadMe.txt @@ -1,6 +1,6 @@ - Notes on FT8Call Installation for Mac OS X - (replace all instances of WSJT-X with FT8Call) + Notes on JS8Call Installation for Mac OS X + (replace all instances of WSJT-X with JS8Call) Notes on WSJT-X Installation for Mac OS X ----------------------------------------- diff --git a/Darwin/ft8call_DMG.DS_Store b/Darwin/js8call_DMG.DS_Store similarity index 100% rename from Darwin/ft8call_DMG.DS_Store rename to Darwin/js8call_DMG.DS_Store diff --git a/README b/README index 7d1ae29..34d8c91 100644 --- a/README +++ b/README @@ -1,19 +1,19 @@ -# FT8Call +# JS8Call FT8 has taken over the airwaves as the digital communication mode for making QSOs over HF/VHF/UHF. The mode has been widely popular as the latest offering in K1JT’s WSJT-X application. FT8 is based on the same foundation as JT65, JT9, and WSPR modes for weak signal communication, but transmits faster with only slightly reduced sensitivity. While FT8 is an incredibly robust weak signal mode, it is designed heavily to take advantage of short band openings on HF/VHF/UHF and only offers a minimal QSO framework. However, many operators are using these weak signal qualities to make successful QSOs on the HF bands where other modes fail. -FT8Call is an experiment to test the feasibility of a digital mode with the robustness of FT8, combined with a messaging and network protocol layer for weak signal communication on HF, using keyboard-to-keyboard style interface. FT8Call is heavily inspired by WSJT-X, Fldigi, and FSQCall and would not exist without the hard work and dedication of the many developers in the amateur radio community. +JS8Call is an experiment to test the feasibility of a digital mode with the robustness of FT8, combined with a messaging and network protocol layer for weak signal communication on HF, using keyboard-to-keyboard style interface. JS8Call is heavily inspired by WSJT-X, Fldigi, and FSQCall and would not exist without the hard work and dedication of the many developers in the amateur radio community. -* Read more on the original design inspiration here: https://github.com/jsherer/ft8call +* Read more on the original design inspiration here: https://github.com/jsherer/js8call -* For release announcements and discussion, join the FT8Call mailing list here: https://groups.io/g/ft8call +* For release announcements and discussion, join the JS8Call mailing list here: https://groups.io/g/js8call # Notice -FT8Call is a derivative of the WSJT-X application, restructured and redesigned for message passing using FT8 modulation. It is not supported by nor endorsed by the WSJT-X development group. While the WSJT-X group maintains copyright over the original work and code, FT8Call is a derivative work licensed under and in accordance with the terms of the GPLv3 license. The source code modifications are public and can be found in this repository: https://bitbucket.org/widefido/wsjtx/ +JS8Call is a derivative of the WSJT-X application, restructured and redesigned for message passing using FT8 modulation. It is not supported by nor endorsed by the WSJT-X development group. While the WSJT-X group maintains copyright over the original work and code, JS8Call is a derivative work licensed under and in accordance with the terms of the GPLv3 license. The source code modifications are public and can be found in this repository: https://bitbucket.org/widefido/wsjtx/ # History @@ -22,11 +22,11 @@ FT8Call is a derivative of the WSJT-X application, restructured and redesigned f * August 31, 2017 - Jordan, KN4CRD, did a little development and modified WSJT-X to support long-form QSOs using the existing FT8 protocol: https://sourceforge.net/p/wsjt/mailman/message/36020051/ He sent a video example to the WSJT-X group: https://widefido.wistia.com/medias/7bb1uq62ga * January 8, 2018 - Jordan, KN4CRD, started working on the design of a long-form QSO application built on top of FT8 with a redesigned interface. * February 9, 2018 - Jordan, KN4CRD, submitted question to the WSJT-X group to see if there was any interest in pursuing the idea: https://sourceforge.net/p/wsjt/mailman/message/36221549/ -* February 10, 2018 - Jordan KN4CRD, Julian OH8STN, John N0JDS, and the Portable Digital QRP group did an experiment using FSQ. The idea of FT8Call, combining FT8, long-form QSOs, and FSQCall like features was born. +* February 10, 2018 - Jordan KN4CRD, Julian OH8STN, John N0JDS, and the Portable Digital QRP group did an experiment using FSQ. The idea of JS8Call, combining FT8, long-form QSOs, and FSQCall like features was born. * February 11, 2018 - Jordan, KN4CRD, inquired about the idea of integrating long-form messages into WSJT-X: https://sourceforge.net/p/wsjt/mailman/message/36223372/ * February 12, 2018 - Joe Taylor, K1JT, wrote back: https://sourceforge.net/p/wsjt/mailman/message/36224507/ saying that “Please don't let my comment discourage you from proceeding as you wish, toward something new.” -* March 4, 2018 - Jordan, KN4CRD, published a design document for FT8Call: https://github.com/jsherer/ft8call -* July 6, 2018 - Version 0.0.1 of FT8Call released to the development group +* March 4, 2018 - Jordan, KN4CRD, published a design document for JS8Call: https://github.com/jsherer/js8call +* July 6, 2018 - Version 0.0.1 of JS8Call released to the development group * July 15, 2018 - Version 0.1 released - a dozen testers * July 21, 2018 - Version 0.2 released - 75 testers * July 27, 2018 - Version 0.3 released - 150 testers diff --git a/about.cpp b/about.cpp index 29db730..2df354b 100644 --- a/about.cpp +++ b/about.cpp @@ -13,25 +13,25 @@ CAboutDlg::CAboutDlg(QWidget *parent) : { ui->setupUi(this); - ui->labelTxt->setText ("

" + QString {"FT8Call v" + ui->labelTxt->setText ("

" + QString {"JS8Call v" + QCoreApplication::applicationVersion () + " " + revision ()}.simplified () + "


" - "FT8Call is a derivative of the WSJT-X application, " + "JS8Call is a derivative of the WSJT-X application, " "restructured and redesigned for message passing.
" "It is not supported by nor endorsed by the WSJT-X " - "development group.
FT8Call is " + "development group.
JS8Call is " "licensed under and in accordance with the terms " "of the GPLv3 license.
" "The source code modifications are public and can be found in this repository.

" - "FT8Call is heavily inspired by WSJT-X, Fldigi, " + "JS8Call is heavily inspired by WSJT-X, Fldigi, " "and FSQCall
and would not exist without the hard work and " "dedication of the many
developers in the amateur radio " "community.

" - "FT8Call stands on the shoulder of giants...the takeoff angle " + "JS8Call stands on the shoulder of giants...the takeoff angle " "is better up there.

" - "A special thanks goes out to the FT8Call development team:

" + "A special thanks goes out to the JS8Call development team:

" "KC9QNE, " "KI6SSI, " "K0OG, " @@ -42,7 +42,7 @@ CAboutDlg::CAboutDlg(QWidget *parent) : "VA3OSO, " "VK1MIC, " "W0FW,

and the many other amateur radio operators who have given " - "FT8Call a chance."); + "JS8Call a chance."); } CAboutDlg::~CAboutDlg() diff --git a/about.ui b/about.ui index 5a7639f..2558069 100644 --- a/about.ui +++ b/about.ui @@ -14,7 +14,7 @@ - About FT8Call + About JS8Call diff --git a/artwork/ft8call_icon.png b/artwork/js8call_icon.png similarity index 100% rename from artwork/ft8call_icon.png rename to artwork/js8call_icon.png diff --git a/artwork/make_graphics.sh b/artwork/make_graphics.sh index 66438fe..2502495 100755 --- a/artwork/make_graphics.sh +++ b/artwork/make_graphics.sh @@ -25,9 +25,9 @@ convert '/tmp/image-%d.png[0-1]' -background transparent \ \( -clone 1 -resize 128 -compress none \) \ \( -clone 1 -resize 256 -compress Zip \) \ -delete 1 -delete 0 \ - -alpha remove ../icons/windows-icons/ft8call.ico + -alpha remove ../icons/windows-icons/js8call.ico rm /tmp/image-0.png /tmp/image-1.png -identify -format '%f %p/%n %m %C/%Q %r %G %A %z\n' ../icons/windows-icons/ft8call.ico +identify -format '%f %p/%n %m %C/%Q %r %G %A %z\n' ../icons/windows-icons/js8call.ico # #inkscape -z -e /dev/stdout -w 150 -h 57 -b white installer_logo.svg | tail -n +4 | \ # convert png:- -resize 150x57 +matte BMP3:../icons/windows-icons/installer_logo.bmp @@ -37,18 +37,18 @@ identify -format '%f %p/%n %m %C/%Q %r %G %A %z\n' ../icons/windows-icons/instal # # Mac # -mkdir -p ../icons/Darwin/FT8Call.iconset -inkscape -z -e ../icons/Darwin/FT8Call.iconset/icon_16x16.png -w 16 -h 16 icon_128.svg -inkscape -z -e ../icons/Darwin/FT8Call.iconset/icon_16x16@2x.png -w 32 -h 32 icon_128.svg -inkscape -z -e ../icons/Darwin/FT8Call.iconset/icon_32x32.png -w 32 -h 32 icon_128.svg -inkscape -z -e ../icons/Darwin/FT8Call.iconset/icon_32x32@2x.png -w 64 -h 64 icon_128.svg -inkscape -z -e ../icons/Darwin/FT8Call.iconset/icon_128x128.png -w 128 -h 128 icon_1024.svg -inkscape -z -e ../icons/Darwin/FT8Call.iconset/icon_128x128@2x.png -w 256 -h 256 icon_1024.svg -inkscape -z -e ../icons/Darwin/FT8Call.iconset/icon_256x256.png -w 256 -h 256 icon_1024.svg -inkscape -z -e ../icons/Darwin/FT8Call.iconset/icon_256x256@2x.png -w 512 -h 512 icon_1024.svg -inkscape -z -e ../icons/Darwin/FT8Call.iconset/icon_512x512.png -w 512 -h 512 icon_1024.svg -inkscape -z -e ../icons/Darwin/FT8Call.iconset/icon_512x512@2x.png -w 1024 -h 1024 icon_1024.svg -identify -format '%f %p/%n %m %C/%Q %r %G %A %z\n' ../icons/Darwin/FT8Call.iconset/* +mkdir -p ../icons/Darwin/JS8Call.iconset +inkscape -z -e ../icons/Darwin/JS8Call.iconset/icon_16x16.png -w 16 -h 16 icon_128.svg +inkscape -z -e ../icons/Darwin/JS8Call.iconset/icon_16x16@2x.png -w 32 -h 32 icon_128.svg +inkscape -z -e ../icons/Darwin/JS8Call.iconset/icon_32x32.png -w 32 -h 32 icon_128.svg +inkscape -z -e ../icons/Darwin/JS8Call.iconset/icon_32x32@2x.png -w 64 -h 64 icon_128.svg +inkscape -z -e ../icons/Darwin/JS8Call.iconset/icon_128x128.png -w 128 -h 128 icon_1024.svg +inkscape -z -e ../icons/Darwin/JS8Call.iconset/icon_128x128@2x.png -w 256 -h 256 icon_1024.svg +inkscape -z -e ../icons/Darwin/JS8Call.iconset/icon_256x256.png -w 256 -h 256 icon_1024.svg +inkscape -z -e ../icons/Darwin/JS8Call.iconset/icon_256x256@2x.png -w 512 -h 512 icon_1024.svg +inkscape -z -e ../icons/Darwin/JS8Call.iconset/icon_512x512.png -w 512 -h 512 icon_1024.svg +inkscape -z -e ../icons/Darwin/JS8Call.iconset/icon_512x512@2x.png -w 1024 -h 1024 icon_1024.svg +identify -format '%f %p/%n %m %C/%Q %r %G %A %z\n' ../icons/Darwin/JS8Call.iconset/* # generic globe iconset for utilities mkdir -p ../icons/Darwin/wsjt.iconset inkscape -z -e ../icons/Darwin/wsjt.iconset/icon_16x16.png -w 16 -h 16 icon_128.svg @@ -69,5 +69,5 @@ identify -format '%f %p/%n %m %C/%Q %r %G %A %z\n' "../icons/Darwin/DragNDrop Ba # # KDE & Gnome # -inkscape -z -e ../icons/Unix/ft8call_icon.png -w 128 -h 128 icon_1024.svg -identify -format '%f %p/%n %m %C/%Q %r %G %A %z\n' ../icons/Unix/ft8call_icon.png +inkscape -z -e ../icons/Unix/js8call_icon.png -w 128 -h 128 icon_1024.svg +identify -format '%f %p/%n %m %C/%Q %r %G %A %z\n' ../icons/Unix/js8call_icon.png diff --git a/decodedtext.cpp b/decodedtext.cpp index 9bed550..620f55e 100644 --- a/decodedtext.cpp +++ b/decodedtext.cpp @@ -61,9 +61,9 @@ DecodedText::DecodedText (QString const& the_string, bool contest_mode, QString tryUnpack(); } -DecodedText::DecodedText (QString const& ft8callmessage): +DecodedText::DecodedText (QString const& js8callmessage): frameType_(Varicode::FrameUnknown), - message_(ft8callmessage), + message_(js8callmessage), isBeacon_(false), isAlt_(false) { diff --git a/decodedtext.h b/decodedtext.h index a75e7c6..e0b0de3 100644 --- a/decodedtext.h +++ b/decodedtext.h @@ -31,7 +31,7 @@ class DecodedText { public: explicit DecodedText (QString const& message, bool, QString const& my_grid); - explicit DecodedText (QString const& ft8callmessage); + explicit DecodedText (QString const& js8callmessage); bool tryUnpack(); bool tryUnpackBeacon(); diff --git a/icons/Darwin/FT8Call.iconset/icon_128x128.png b/icons/Darwin/JS8Call.iconset/icon_128x128.png similarity index 100% rename from icons/Darwin/FT8Call.iconset/icon_128x128.png rename to icons/Darwin/JS8Call.iconset/icon_128x128.png diff --git a/icons/Darwin/FT8Call.iconset/icon_128x128@2x.png b/icons/Darwin/JS8Call.iconset/icon_128x128@2x.png similarity index 100% rename from icons/Darwin/FT8Call.iconset/icon_128x128@2x.png rename to icons/Darwin/JS8Call.iconset/icon_128x128@2x.png diff --git a/icons/Darwin/FT8Call.iconset/icon_16x16.png b/icons/Darwin/JS8Call.iconset/icon_16x16.png similarity index 100% rename from icons/Darwin/FT8Call.iconset/icon_16x16.png rename to icons/Darwin/JS8Call.iconset/icon_16x16.png diff --git a/icons/Darwin/FT8Call.iconset/icon_16x16@2x.png b/icons/Darwin/JS8Call.iconset/icon_16x16@2x.png similarity index 100% rename from icons/Darwin/FT8Call.iconset/icon_16x16@2x.png rename to icons/Darwin/JS8Call.iconset/icon_16x16@2x.png diff --git a/icons/Darwin/FT8Call.iconset/icon_256x256.png b/icons/Darwin/JS8Call.iconset/icon_256x256.png similarity index 100% rename from icons/Darwin/FT8Call.iconset/icon_256x256.png rename to icons/Darwin/JS8Call.iconset/icon_256x256.png diff --git a/icons/Darwin/FT8Call.iconset/icon_256x256@2x.png b/icons/Darwin/JS8Call.iconset/icon_256x256@2x.png similarity index 100% rename from icons/Darwin/FT8Call.iconset/icon_256x256@2x.png rename to icons/Darwin/JS8Call.iconset/icon_256x256@2x.png diff --git a/icons/Darwin/FT8Call.iconset/icon_32x32.png b/icons/Darwin/JS8Call.iconset/icon_32x32.png similarity index 100% rename from icons/Darwin/FT8Call.iconset/icon_32x32.png rename to icons/Darwin/JS8Call.iconset/icon_32x32.png diff --git a/icons/Darwin/FT8Call.iconset/icon_32x32@2x.png b/icons/Darwin/JS8Call.iconset/icon_32x32@2x.png similarity index 100% rename from icons/Darwin/FT8Call.iconset/icon_32x32@2x.png rename to icons/Darwin/JS8Call.iconset/icon_32x32@2x.png diff --git a/icons/Darwin/FT8Call.iconset/icon_512x512.png b/icons/Darwin/JS8Call.iconset/icon_512x512.png similarity index 100% rename from icons/Darwin/FT8Call.iconset/icon_512x512.png rename to icons/Darwin/JS8Call.iconset/icon_512x512.png diff --git a/icons/Darwin/FT8Call.iconset/icon_512x512@2x.png b/icons/Darwin/JS8Call.iconset/icon_512x512@2x.png similarity index 100% rename from icons/Darwin/FT8Call.iconset/icon_512x512@2x.png rename to icons/Darwin/JS8Call.iconset/icon_512x512@2x.png diff --git a/icons/Unix/ft8call_icon.png b/icons/Unix/js8call_icon.png similarity index 100% rename from icons/Unix/ft8call_icon.png rename to icons/Unix/js8call_icon.png diff --git a/icons/windows-icons/installer_logo.bmp b/icons/windows-icons/installer_logo.bmp index cc9f1f2034454a1fbf17cee179e14709b4a75ab9..abfd7dff278dc991763e77ae6c3feab60e7b5a46 100644 GIT binary patch literal 25818 zcmeI4XJ{2$5XTdH4R&K!umpRJJZum@Sf2_is3^AgK~S;xt{@g{pix0ZF&3;~1AB=D zdq<63EZDI3^4^b~m&4}X>}K!o&0cfw3R%xRJ7;Fj{P(n(*-iL6<)0|+Up&`1{u257 zi@)foSguh~N!(A4kw2}1%fCVT_wC!a*RNkceE9Izty@>GUgb)e8tQ{2!DExY1)O2{ z{{8z47cQ(?wQAU~VeQ+uZ`7z!)v8s?moHzsbZM@X8#Zi6{m`L9p@9~-aJ;h4R!xQtGa)jtapT5PrAi5aEMG&040-(caS%-fH+ZTAmJL+;U|M>ADim@!We z!#j8GG-%L3ELx#Lg?;<>xzOpod-tlR2Jg<@yLVj>8XhA2Fl4vUyLWE^kQ3dOEn8gc zD6;V7i0D3j`gk4yi!2+`?F`yMlRCPVa=K~7CRB) zWN9%Z(onm0Z5au;!`ydKBN69~C{U+P9rTHCe5`aoEr!#kO%waEG~rgU!XW50=g*%n zSFW6>F=NJzpz{wuhB^${MpUU%MT|Fn`t%U?RXs`^{O{en7eY<4glHXx^XJbO0OR7~ z?%%&3LiNE-Ifu|Hgqmat(Ww}|efyTsf?$YyJLI}gnlwq2K`V3%xjuig0;w2ss4rNs zAZEii6RMR^Zzpsh0*O9o9CPr#Elj7||pr zCl@GC09NSs;K2hUGOu34kOfBqKxCp}T^m-xL$_hW2K<~VRBVJH0sXaW*VeCJA8_!> zn(SB5M9wEn5carNlvY>eMNmD|z$g1s3(sAHyF%e(5z<7%aNM|YVk%O7E%qD7CTYL5YSmK76nbzdD-6kZ zTCiY2<;s405skuv*X#V)5Ag_p3?vemn?VS$;L(e26{5aZOxiBSFBiJB`uC;%EQnc5$(-HDirVP@iJ(__e#NVJ%SK2xGUhMXALf39D@KG3XGG*R9o1Syrhf{z6> z3>iqWh}Ec31vEh)9xlc(8d`4{ zX_OjeVmoHy#WD*?Dpl9yL0YhG-;NZ7?`*w$p>SfE8iApV6wD|b( zqmfo#y@nxX7&&sJ7>r@Y3DCA-74Sf5FNU8>n19V8a2uxxA1PBis7zZ zyJSfu8_G%Ck2%)%(-U$9@m%;mHR(ca!dB->`qF3nISc9Q0bbWwwFmC+$4?2)nFK^=xP zx^m?TFFGmvDG!=;ehw*-sGcKIF!)xHLxz#iJS~Rwc-E|0l21V{%er;zT($vW56Pin zF6I3hm!)S>aef%Sdi6?qDG4W?JbBW!p7EU%^(HBvTfP(Kn&>Po$PYt$bLPw$WlP-E zOt3C=5h*Gtf^>9nL1=i0NDo7LMv|KNDp?yFH*S3C(xpu8F8q-q>o9VWo~h!(jJW}Z zMEN-Bt53*~H*@gd!Js%`eC!8LIKy86MB>7Q3j>NV`Y?>Zp9UCW3BFjt{ziRxgilv2 zUc5NCzGt|>Q+*VJ-3M>2w;Y%gCRk+H;;6e+S^NZRKu7rtk~NslXKYN+?g1*a_>2o=N4M;-5{4GRQ_ zp-3R0$LIKnvlB2T7g!-_UVsvMTG7@E3EIHQsEI8Mg&BKDVho!$ZDNChYm9vfqmJ)C zGhyT%vd10`P(^LCy_P}r__fT3O{xu9%WNTA^R&xZ~jB9)LUWooE5$ywDi V@yhlr5F`xk3HMqB#R5@L{{cV33(Eii literal 25818 zcmeI4S!_*R6vuCCcrdg`h$%u%B@{&y5>wL(p{Pnoct8mcq=rb$vxKB6iD=E^6A?oi zL5U&x(DcC&5j3faA!7C+h6LaDcb2>Co_p^;<30DbXP>0E``okkT5GT0J^SqOWad=P z3TQ_LK2z~mjK4wnO9-^aCmsJJ1p>eSg2#VRIR4d+C@5Ac!$cqu2=k?tuReYHw0rmN z{QUgBefxIk&>{HC`2D|Gvu2$-bs92c$n@#cw`|$+@Zm!%ij}O{2-s!#;K75XOP6-+ z*inRLn9j(^Sg>Hh&6_vPx~Jq!M8G=3OP4N<9zEI+mqegx)273R4~HHT{wWdT2v}iw z>(;HX^!oSjziipE!-o$;psK3s)vH(U-@kwT`t|+$_pe>McKrD9b?ep*7%-q=!-hJr zAPE6uCzXUW0;U;)l8yi>#yxxXynFXfYT)n1r%#{m+O=!guwkMeJTq6VTJ_<>hreY9XnQ3h<4B2yLas=RJn{8f|VHT z)YR1T=g+$mHjo@Ra3Cwk4SDF$Ay+i}O^KA@)vH%I#z-t&xX|73;IX-S_3DI#1hN8* z2M!!?*MuLmMP?`hM3~Q>JsYKXfE(y3jJCrYfg!qodS~S z=gyrolS|1^1i~>y71yFg3yNq`QWClg9z+Wrf4&>Lb?XKnJTO`}OoU@NX3QAA3Gdvw z<5@vZoH&7>44KC8oM(1xyP*(mm_CYjl1&T)}~Dxaz@>XhOreGat*d=(59SY*RS8Wal?tK2@@ueOPHK;qNmR14KhTPMFHEkZJWbFKY8+G{P^+E28?o5U%q^i z2yETDm0TJ+bf`p3UD6n$TS(Eu=bJZgoJ3{Ah7GJr&JdC*DJc?LSQS93uy*6)$Bz<8 zpI_1#Vyu#)g=UTIcwo&1dX)?iiAW5O963Uga)$7vb?ZNCDkG_~?QLDks4?X6wZVf2 z+bA5S;PDg{=}|f~@V9T@7Uz8p8S=u7W5m&^sPMS1{vXqpRSar-l@)|>KlrCDd$b8YUAgW1|CORzQDc^?}$>zy=QNWPl zoH=ty-t{E}=8GBsk~JBwT)EPW%V=%%?%i9Y!D$Rsa~ce(4$7EI^dV;?no;-=|EOqN72liHV6jckaZDJYPkhfYV~4Wy_X$ z0?Q52RmIRulxp6GSV%9=q+6uOWaiDA_wCy^AnG;A$%7Jnv!49}c7Ljl7h$gu0}L8!!v)b<`L5B!V=6G4VQe*Ea!vnOHPym@oX zUBe!Ka>mJ2O3X{)jRQf3u*M_b=n8!P{Mj4(k*x3t9i|y0$*Aus0s_Nl&z^BxzPPwJ zh7me=@F3lU7%5jRQbP~|L&z>(yqJR5zI}U12f|RR69L%eT^BQE%y6R0CwXf!#I4Ac zSgcxu+#E%vpl(7lKf{^~kpnBdxgPU=*GgGg8Cl2YjvYJ9lt9UZFvMHBa&mGgkhmu? z0q9wf9zA-*05MYPncdoMD1;#jgiXL)qjvA!J=&XqDTHs|zU7Upu0OK|}}MMZ^G4Str7zz`wfCAz5Ju z(8m-Awi=57u^-T3T9~o0}`@L3-4vQP_qb&q0cF-^?+jLR`Ffu}6;{ zIs&a)wZdYj_3PJTh6uxCx(6nvLoQsnP*_+9bd4J~*5&Qht5@iXoH!3y9J*(PA>0Qg zEStv*OLa8(6g?7*wPMLe+qP{RG-$xz>k?hMbWu+~w|)*58IoD7zro&I?4J;uJ32~{ zPO&re)TvW$xv%sf0=5`(loggedOperator->text(); - //Log this QSO to ADIF file "ft8call_log.adi" - QString filename = "ft8call_log.adi"; // TODO allow user to set + //Log this QSO to ADIF file "js8call_log.adi" + QString filename = "js8call_log.adi"; // TODO allow user to set ADIF adifile; - auto adifilePath = QDir {QStandardPaths::writableLocation (QStandardPaths::DataLocation)}.absoluteFilePath ("ft8call_log.adi"); + auto adifilePath = QDir {QStandardPaths::writableLocation (QStandardPaths::DataLocation)}.absoluteFilePath ("js8call_log.adi"); adifile.init(adifilePath); QByteArray ADIF {adifile.QSOToADIF (hisCall, hisGrid, mode, rptSent, rptRcvd, m_dateTimeOn, m_dateTimeOff, band @@ -137,8 +137,8 @@ void LogQSO::accept() } } -//Log this QSO to file "ft8call.log" - static QFile f {QDir {QStandardPaths::writableLocation (QStandardPaths::DataLocation)}.absoluteFilePath ("ft8call.log")}; +//Log this QSO to file "js8call.log" + static QFile f {QDir {QStandardPaths::writableLocation (QStandardPaths::DataLocation)}.absoluteFilePath ("js8call.log")}; if(!f.open(QIODevice::Text | QIODevice::Append)) { MessageBox::warning_message (this, tr ("Log file error"), tr ("Cannot open \"%1\" for append").arg (f.fileName ()), diff --git a/main.cpp b/main.cpp index 628f122..bcca36d 100644 --- a/main.cpp +++ b/main.cpp @@ -108,7 +108,7 @@ int main(int argc, char *argv[]) // Override programs executable basename as application name. //a.setApplicationName ("WSJT-X"); - a.setApplicationName("FT8Call"); + a.setApplicationName("JS8Call"); a.setApplicationVersion (version ()); #if QT_VERSION >= 0x050200 diff --git a/mainwindow.cpp b/mainwindow.cpp index 9d41090..d282599 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -173,7 +173,7 @@ namespace { Radio::Frequency constexpr default_frequency {14078000}; - QRegExp message_alphabet {"[^\\x00-\\x1F]*"}; // base alphabet supported by FT8CALL + QRegExp message_alphabet {"[^\\x00-\\x1F]*"}; // base alphabet supported by JS8CALL // grid exact match excluding RR73 QRegularExpression grid_regexp {"\\A(?![Rr]{2}73)[A-Ra-r]{2}[0-9]{2}([A-Xa-x]{2}){0,1}\\z"}; @@ -1422,7 +1422,7 @@ QDate eol(2018, 10, 29); void MainWindow::expiry_warning_message() { if(QDateTime::currentDateTimeUtc().date() > eol){ - MessageBox::critical_message (this, QString("This pre-release development build of FT8Call has expired. Please upgrade to the latest version.")); + MessageBox::critical_message (this, QString("This pre-release development build of JS8Call has expired. Please upgrade to the latest version.")); close(); return; } @@ -1436,7 +1436,7 @@ void MainWindow::not_GA_warning_message () QString("This version of %1 is a pre-release development\n" "build and will expire after %2 (UTC), upon which you\n" "will need to upgrade to the latest version. \n\n" - "Use of development versions of FT8Call are at your own risk \n" + "Use of development versions of JS8Call are at your own risk \n" "and carry a responsiblity to report any problems to:\n" "Jordan Sherer (KN4CRD) kn4crd@gmail.com\n\n").arg(QApplication::applicationName()).arg(eol.toString())); @@ -2996,7 +2996,7 @@ void MainWindow::on_actionCopyright_Notice_triggered() "K1JT; Bill Somerville, G4WJS; Steven Franke, K9AN; Nico Palermo, " "IV3NWV; Greg Beam, KI7MT; Michael Black, W9MDB; Edson Pereira, PY2SDR; " "Philip Karn, KA9Q; and other members of the WSJT Development Group.\n\n" - "Further, the source code of FT8Call contains material Copyright (C) " + "Further, the source code of JS8Call contains material Copyright (C) " "2018 by Jordan Sherer, KN4CRD.\""); MessageBox::warning_message(this, message); } @@ -3614,15 +3614,15 @@ void MainWindow::readFromStdout() //readFromStdout DecodedText decodedtext {QString::fromUtf8 (t.constData ()).remove (QRegularExpression {"\r|\n"}), "FT8" == m_mode && ui->cbVHFcontest->isChecked(), m_config.my_grid ()}; - // only display frames that are FT8Call frames (should decrease false decodes by at least 12%) + // only display frames that are JS8Call frames (should decrease false decodes by at least 12%) int bits = decodedtext.bits(); bool bValidFrame = ( decodedtext.snr() > -24 && - (bits == Varicode::FT8Call || - ((bits & Varicode::FT8CallFirst) == Varicode::FT8CallFirst) || - ((bits & Varicode::FT8CallLast) == Varicode::FT8CallLast) || - ((bits & Varicode::FT8CallReserved) == 0 /*Varicode::FT8CallReserved*/)) // This is unused...so is invalid at this time... + (bits == Varicode::JS8Call || + ((bits & Varicode::JS8CallFirst) == Varicode::JS8CallFirst) || + ((bits & Varicode::JS8CallLast) == Varicode::JS8CallLast) || + ((bits & Varicode::JS8CallReserved) == 0 /*Varicode::JS8CallReserved*/)) // This is unused...so is invalid at this time... ); qDebug() << "valid" << bValidFrame << "decoded text" << decodedtext.message(); @@ -3661,7 +3661,7 @@ void MainWindow::readFromStdout() //readFromStdout d.isBuffered = false; // if we have any "first" frame, and a buffer is already established, clear it... - if(((d.bits & Varicode::FT8CallFirst) == Varicode::FT8CallFirst) && m_messageBuffer.contains(d.freq/10*10)){ + if(((d.bits & Varicode::JS8CallFirst) == Varicode::JS8CallFirst) && m_messageBuffer.contains(d.freq/10*10)){ qDebug() << "first message encountered, clearing existing buffer" << (d.freq/10*10); m_messageBuffer.remove(d.freq/10*10); } @@ -3735,7 +3735,7 @@ void MainWindow::readFromStdout() //readFromStdout d.extra = parts.length() > 2 ? parts.mid(3).join(" ") : ""; // if the command is a buffered command and its not the last frame OR we have from or to in a separate message (compound call) - if((Varicode::isCommandBuffered(d.cmd) && (d.bits & Varicode::FT8CallLast) != Varicode::FT8CallLast) || d.from == "<....>" || d.to == "<....>"){ + if((Varicode::isCommandBuffered(d.cmd) && (d.bits & Varicode::JS8CallLast) != Varicode::JS8CallLast) || d.from == "<....>" || d.to == "<....>"){ qDebug() << "buffering cmd" << d.cmd << d.from << d.to; m_messageBuffer[d.freq/10*10].cmd = d; m_messageBuffer[d.freq/10*10].msgs.clear(); @@ -6162,7 +6162,7 @@ QStringList MainWindow::buildMessageFrames(const QString &text){ bool MainWindow::prepareNextMessageFrame() { - m_i3bit = Varicode::FT8Call; + m_i3bit = Varicode::JS8Call; QString frame = popMessageFrame(); if(frame.isEmpty()){ @@ -6175,10 +6175,10 @@ bool MainWindow::prepareNextMessageFrame() int sent = count - m_txFrameQueue.count(); if(sent == 1){ - m_i3bit |= Varicode::FT8CallFirst; + m_i3bit |= Varicode::JS8CallFirst; } if(count == sent){ - m_i3bit |= Varicode::FT8CallLast; + m_i3bit |= Varicode::JS8CallLast; } ui->startTxButton->setText(QString("Sending (%1/%2)").arg(sent).arg(count)); @@ -6312,7 +6312,7 @@ void MainWindow::prepareBeacon(){ QString mycall = m_config.my_callsign(); QString mygrid = m_config.my_grid().left(4); - // FT8Call Style + // JS8Call Style if(m_txBeaconQueue.isEmpty()){ lines.append(QString("%1: BEACON %2").arg(mycall).arg(mygrid)); } else { @@ -6814,12 +6814,12 @@ void MainWindow::on_actionErase_FoxQSO_txt_triggered() } } -void MainWindow::on_actionErase_ft8call_log_adi_triggered() +void MainWindow::on_actionErase_js8call_log_adi_triggered() { int ret = MessageBox::query_message (this, tr ("Confirm Erase"), - tr ("Are you sure you want to erase file ft8call_log.adi?")); + tr ("Are you sure you want to erase file js8call_log.adi?")); if(ret==MessageBox::Yes) { - QFile f {m_config.writeable_data_dir ().absoluteFilePath ("ft8call_log.adi")}; + QFile f {m_config.writeable_data_dir ().absoluteFilePath ("js8call_log.adi")}; f.remove(); } } @@ -7683,7 +7683,7 @@ void MainWindow::on_tableWidgetRXAll_cellDoubleClicked(int row, int col){ } activityText.append(d.text); - isLast = (d.bits & Varicode::FT8CallLast) == Varicode::FT8CallLast; + isLast = (d.bits & Varicode::JS8CallLast) == Varicode::JS8CallLast; if(isLast){ // can also use \u0004 \u2666 \u2404 activityText.append(" \u2301 "); @@ -8364,7 +8364,7 @@ bool MainWindow::shortList(QString callsign) void MainWindow::pskSetLocal () { psk_Reporter->setLocalStation(m_config.my_callsign (), m_config.my_grid (), - m_config.my_station(), QString {"FT8Call v" + version() }.simplified ()); + m_config.my_station(), QString {"JS8Call v" + version() }.simplified ()); } void MainWindow::aprsSetLocal () @@ -8990,8 +8990,8 @@ void MainWindow::processRxActivity() { markOffsetRecent(d.freq); #endif - bool isFirst = (d.bits & Varicode::FT8CallFirst) == Varicode::FT8CallFirst; - bool isLast = (d.bits & Varicode::FT8CallLast) == Varicode::FT8CallLast; + bool isFirst = (d.bits & Varicode::JS8CallFirst) == Varicode::JS8CallFirst; + bool isLast = (d.bits & Varicode::JS8CallLast) == Varicode::JS8CallLast; // if we're the last message, let's display our EOT character if (isLast) { @@ -9035,10 +9035,10 @@ void MainWindow::processCompoundActivity() { // if we don't have an initialized command, skip... int bits = buffer.cmd.bits; bool validBits = ( - bits == Varicode::FT8Call || - ((bits & Varicode::FT8CallFirst) == Varicode::FT8CallFirst) || - ((bits & Varicode::FT8CallLast) == Varicode::FT8CallLast) || - ((bits & Varicode::FT8CallReserved) == Varicode::FT8CallReserved) + bits == Varicode::JS8Call || + ((bits & Varicode::JS8CallFirst) == Varicode::JS8CallFirst) || + ((bits & Varicode::JS8CallLast) == Varicode::JS8CallLast) || + ((bits & Varicode::JS8CallReserved) == Varicode::JS8CallReserved) ); if (!validBits) { qDebug() << "-> buffer.cmd bits is invalid...skip"; @@ -9064,7 +9064,7 @@ void MainWindow::processCompoundActivity() { buffer.cmd.isCompound = true; buffer.cmd.utcTimestamp = qMin(buffer.cmd.utcTimestamp, d.utcTimestamp); - if ((d.bits & Varicode::FT8CallLast) == Varicode::FT8CallLast) { + if ((d.bits & Varicode::JS8CallLast) == Varicode::JS8CallLast) { buffer.cmd.bits = d.bits; } } @@ -9075,12 +9075,12 @@ void MainWindow::processCompoundActivity() { buffer.cmd.isCompound = true; buffer.cmd.utcTimestamp = qMin(buffer.cmd.utcTimestamp, d.utcTimestamp); - if ((d.bits & Varicode::FT8CallLast) == Varicode::FT8CallLast) { + if ((d.bits & Varicode::JS8CallLast) == Varicode::JS8CallLast) { buffer.cmd.bits = d.bits; } } - if ((buffer.cmd.bits & Varicode::FT8CallLast) != Varicode::FT8CallLast) { + if ((buffer.cmd.bits & Varicode::JS8CallLast) != Varicode::JS8CallLast) { qDebug() << "-> still not last message...skip"; continue; } @@ -9133,7 +9133,7 @@ void MainWindow::processBufferedActivity() { continue; } - if ((buffer.msgs.last().bits & Varicode::FT8CallLast) != Varicode::FT8CallLast) { + if ((buffer.msgs.last().bits & Varicode::JS8CallLast) != Varicode::JS8CallLast) { continue; } @@ -9167,7 +9167,7 @@ void MainWindow::processBufferedActivity() { if (valid) { - buffer.cmd.bits |= Varicode::FT8CallLast; + buffer.cmd.bits |= Varicode::JS8CallLast; buffer.cmd.text = message; buffer.cmd.isBuffered = true; m_rxCommandQueue.append(buffer.cmd); @@ -9263,7 +9263,7 @@ void MainWindow::processCommandActivity() { if(!d.text.isEmpty()){ ad.text += d.text; } - bool isLast = (ad.bits & Varicode::FT8CallLast) == Varicode::FT8CallLast; + bool isLast = (ad.bits & Varicode::JS8CallLast) == Varicode::JS8CallLast; if (isLast) { // can also use \u0004 \u2666 \u2404 ad.text += QString(" \u2301 "); @@ -9879,7 +9879,7 @@ void MainWindow::displayBandActivity() { if (item.isLowConfidence) { item.text = QString("[%1]").arg(item.text); } - if ((item.bits & Varicode::FT8CallLast) == Varicode::FT8CallLast) { + if ((item.bits & Varicode::JS8CallLast) == Varicode::JS8CallLast) { // can also use \u0004 \u2666 \u2404 item.text = QString("%1 \u2301 ").arg(item.text); } diff --git a/mainwindow.h b/mainwindow.h index 6f49434..872f82e 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -250,7 +250,7 @@ private slots: void bumpFqso(int n); void on_actionErase_ALL_TXT_triggered(); void on_actionErase_FoxQSO_txt_triggered(); - void on_actionErase_ft8call_log_adi_triggered(); + void on_actionErase_js8call_log_adi_triggered(); void startTx(); void startTx2(); void startP1(); diff --git a/mainwindow.ui b/mainwindow.ui index 4270631..3986806 100644 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -17,7 +17,7 @@ - FT8Call + JS8Call @@ -4733,7 +4733,7 @@ list. The list can be maintained in Settings (F2). - + @@ -4771,7 +4771,7 @@ list. The list can be maintained in Settings (F2). true - About FT8Call + About JS8Call @@ -4949,9 +4949,9 @@ list. The list can be maintained in Settings (F2). Erase ALL.TXT - + - Erase ft8call_log.adi + Erase js8call_log.adi diff --git a/make_app.sh b/make_app.sh index a7340ab..e4d155f 100755 --- a/make_app.sh +++ b/make_app.sh @@ -1,3 +1,3 @@ echo make -echo cp wsjtx ft8call -echo linuxdeployqt ./ft8call -appimage -bundle-non-qt-libs -no-strip -no-translations +echo cp wsjtx js8call +echo linuxdeployqt ./js8call -appimage -bundle-non-qt-libs -no-strip -no-translations diff --git a/revision_utils.cpp b/revision_utils.cpp index f0927ae..c24c8f8 100644 --- a/revision_utils.cpp +++ b/revision_utils.cpp @@ -33,6 +33,6 @@ QString version (bool include_patch) QString program_title (QString const& revision) { - QString id {"FT8Call de KN4CRD (v%1) a derivative of WSJT-X by K1JT"}; + QString id {"JSQCall de KN4CRD (v%1)"}; return id.arg(QCoreApplication::applicationVersion ()); -} \ No newline at end of file +} diff --git a/varicode.cpp b/varicode.cpp index 57497dd..17b0be5 100644 --- a/varicode.cpp +++ b/varicode.cpp @@ -1,5 +1,5 @@ /** - * This file is part of FT8Call. + * This file is part of JS8Call. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/varicode.h b/varicode.h index 0a39e67..cac5795 100644 --- a/varicode.h +++ b/varicode.h @@ -17,10 +17,10 @@ class Varicode public: // frame type transmitted via itype and decoded by the ft8 decoded enum TransmissionType { - FT8Call = 0, // [000] <- any other frame of the message - FT8CallFirst = 1, // [001] <- the first frame of a message - FT8CallLast = 2, // [010] <- the last frame of a message - FT8CallReserved = 4, // [100] <- a reserved flag for future use... + JS8Call = 0, // [000] <- any other frame of the message + JS8CallFirst = 1, // [001] <- the first frame of a message + JS8CallLast = 2, // [010] <- the last frame of a message + JS8CallReserved = 4, // [100] <- a reserved flag for future use... }; enum FrameType { diff --git a/wsjtx.rc b/wsjtx.rc index a232376..2b9271e 100644 --- a/wsjtx.rc +++ b/wsjtx.rc @@ -1 +1 @@ -IDI_ICON1 ICON DISCARDABLE "icons/windows-icons/ft8call.ico" +IDI_ICON1 ICON DISCARDABLE "icons/windows-icons/js8call.ico"