release v0.6.8

This commit is contained in:
tildearrow 2025-03-29 22:26:09 -05:00
parent 13b56870ec
commit 7d96ddaef2
10 changed files with 32 additions and 14 deletions

View file

@ -15,8 +15,8 @@ android {
} }
minSdkVersion 21 minSdkVersion 21
targetSdkVersion 26 targetSdkVersion 26
versionCode 226 versionCode 227
versionName "0.6.8pre2" versionName "0.6.8"
externalNativeBuild { externalNativeBuild {
cmake { cmake {
arguments "-DANDROID_APP_PLATFORM=android-21", "-DANDROID_STL=c++_static", "-DWARNINGS_ARE_ERRORS=ON", "-DWITH_LOCALE=ON", "-DUSE_MOMO=ON" arguments "-DANDROID_APP_PLATFORM=android-21", "-DANDROID_STL=c++_static", "-DWARNINGS_ARE_ERRORS=ON", "-DWITH_LOCALE=ON", "-DUSE_MOMO=ON"

View file

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.tildearrow.furnace" package="org.tildearrow.furnace"
android:versionCode="226" android:versionCode="227"
android:versionName="0.6.8pre2" android:versionName="0.6.8"
android:installLocation="auto"> android:installLocation="auto">
<!-- OpenGL ES 2.0 --> <!-- OpenGL ES 2.0 -->

View file

@ -6,7 +6,7 @@ when copying pattern data from Furnace, it's stored in the clipboard as plain te
org.tildearrow.furnace - Pattern Data (144) org.tildearrow.furnace - Pattern Data (144)
``` ```
this top line of text is always the same except for the number in parentheses, which is the internal format version. for example, 0.6.8pre2 is `226`. this top line of text is always the same except for the number in parentheses, which is the internal format version. for example, 0.6.8 is `227`.
the second line is a number between 0 and 18 (decimal) which indicates which column the clip starts from. the second line is a number between 0 and 18 (decimal) which indicates which column the clip starts from.
- `0`: note. - `0`: note.

View file

@ -32,6 +32,7 @@ these fields are 0 in format versions prior to 100 (0.6pre1).
the format versions are: the format versions are:
- 227: Furnace 0.6.8
- 226: Furnace 0.6.8pre2 - 226: Furnace 0.6.8pre2
- 225: Furnace 0.6.8pre1 - 225: Furnace 0.6.8pre1
- 219: Furnace 0.6.7 - 219: Furnace 0.6.7

View file

@ -15,17 +15,17 @@
<key>CFBundleInfoDictionaryVersion</key> <key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string> <string>6.0</string>
<key>CFBundleLongVersionString</key> <key>CFBundleLongVersionString</key>
<string>0.6.8pre2</string> <string>0.6.8</string>
<key>CFBundleName</key> <key>CFBundleName</key>
<string>Furnace</string> <string>Furnace</string>
<key>CFBundlePackageType</key> <key>CFBundlePackageType</key>
<string>APPL</string> <string>APPL</string>
<key>CFBundleShortVersionString</key> <key>CFBundleShortVersionString</key>
<string>0.6.8pre2</string> <string>0.6.8</string>
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
<string>????</string> <string>????</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
<string>0.6.8pre2</string> <string>0.6.8</string>
<key>NSHumanReadableCopyright</key> <key>NSHumanReadableCopyright</key>
<string></string> <string></string>
<key>NSHighResolutionCapable</key> <key>NSHighResolutionCapable</key>

View file

@ -33,10 +33,10 @@
"Furnace" "Furnace"
VALUE "ProductVersion", VALUE "ProductVersion",
"0.6.8pre2" "0.6.8"
VALUE "FileVersion", VALUE "FileVersion",
"0.6.8pre2" "0.6.8"
VALUE "CompanyName", VALUE "CompanyName",
"tildearrow" "tildearrow"

View file

@ -52,10 +52,10 @@ class DivWorkPool;
#define EXTERN_BUSY_BEGIN_SOFT e->softLocked=true; e->isBusy.lock(); #define EXTERN_BUSY_BEGIN_SOFT e->softLocked=true; e->isBusy.lock();
#define EXTERN_BUSY_END e->isBusy.unlock(); e->softLocked=false; #define EXTERN_BUSY_END e->isBusy.unlock(); e->softLocked=false;
#define DIV_UNSTABLE //#define DIV_UNSTABLE
#define DIV_VERSION "0.6.8pre2" #define DIV_VERSION "0.6.8"
#define DIV_ENGINE_VERSION 226 #define DIV_ENGINE_VERSION 227
// for imports // for imports
#define DIV_VERSION_MOD 0xff01 #define DIV_VERSION_MOD 0xff01
#define DIV_VERSION_FC 0xff02 #define DIV_VERSION_FC 0xff02

View file

@ -8581,6 +8581,9 @@ FurnaceGUI::FurnaceGUI():
vibrator(NULL), vibrator(NULL),
vibratorAvailable(false), vibratorAvailable(false),
cv(NULL), cv(NULL),
lastCVFrame(0),
cvFrameTime(100000),
cvFrameHold(0),
sampleTex(NULL), sampleTex(NULL),
sampleTexW(0), sampleTexW(0),
sampleTexH(0), sampleTexH(0),

View file

@ -1628,6 +1628,8 @@ class FurnaceGUI {
FurnaceCV* cv; FurnaceCV* cv;
FurnaceGUITexture* cvTex; FurnaceGUITexture* cvTex;
uint64_t lastCVFrame;
int cvFrameTime, cvFrameHold;
FurnaceGUITexture* sampleTex; FurnaceGUITexture* sampleTex;
int sampleTexW, sampleTexH; int sampleTexW, sampleTexH;

View file

@ -1011,6 +1011,9 @@ void FurnaceGUI::drawTutorial() {
cv=new FurnaceCV; cv=new FurnaceCV;
cv->init(e); cv->init(e);
cv->hiScore=cvHiScore; cv->hiScore=cvHiScore;
lastCVFrame=SDL_GetPerformanceCounter();
cvFrameTime=100000;
cvFrameHold=0;
} }
if (cvTex==NULL) { if (cvTex==NULL) {
cvTex=rend->createTexture(true,320,224,false,bestTexFormat); cvTex=rend->createTexture(true,320,224,false,bestTexFormat);
@ -1056,7 +1059,16 @@ void FurnaceGUI::drawTutorial() {
cv->e->setSongRate(cv->origSongRate*1.5); cv->e->setSongRate(cv->origSongRate*1.5);
} }
cv->render(touchControls); uint64_t nextFrame=SDL_GetPerformanceCounter();
unsigned int mDivider=SDL_GetPerformanceFrequency()/1000000;
int delta=(nextFrame-lastCVFrame)/mDivider;
cvFrameTime=(cvFrameTime*15+delta)/16;
cvFrameHold+=delta;
if (cvFrameHold>=16667 || cvFrameTime>15000) {
cv->render(touchControls);
cvFrameHold%=16667;
}
lastCVFrame=nextFrame;
if (cv->hiScore>cvHiScore) { if (cv->hiScore>cvHiScore) {
cvHiScore=cv->hiScore; cvHiScore=cv->hiScore;