shithub: cstory

Download patch

ref: 5abf8a887833b3e9fa97845ac43f2d56eadd853f
parent: 718cb714ee39d818c3c6a181ac64ff3310644dfc
author: Clownacy <Clownacy@users.noreply.github.com>
date: Tue Jan 7 16:38:34 EST 2020

More-accurate Organya.cpp variable arrangement

Also found some authentic variable names

--- a/src/Organya.cpp
+++ b/src/Organya.cpp
@@ -117,16 +117,8 @@
 	BOOL InitMusicData(const char *path);
 } ORGDATA;
 
-ORGDATA org_data;
-
 LPDIRECTSOUNDBUFFER lpORGANBUFFER[8][8][2] = {NULL};
 
-int gTrackVol[MAXTRACK];
-int gOrgVolume = 100;
-BOOL bFadeout = FALSE;
-BOOL g_mute[MAXTRACK];	// Used by the debug Mute menu
-
-
 /////////////////////////////////////////////
 //■オルガーニャ■■■■■■■■■■■■/////// (Organya)
 /////////////////////
@@ -139,7 +131,7 @@
 	short oct_size;
 } OCTWAVE;
 
-static const OCTWAVE oct_wave[8] =
+OCTWAVE oct_wave[8] =
 {
 	{ 256,  1,  4 }, // 0 Oct
 	{ 256,  2,  8 }, // 1 Oct
@@ -151,7 +143,7 @@
 	{   8,128, 32 }, // 7 Oct
 };
 
-static WAVEFORMATEX format_tbl2 = {WAVE_FORMAT_PCM, 1, 22050, 22050, 1, 8, 0};	// 22050HzのFormat
+WAVEFORMATEX format_tbl2 = {WAVE_FORMAT_PCM, 1, 22050, 22050, 1, 8, 0};	// 22050HzのFormat
 
 // In the original source code, format_tbl2 was a raw array of bytes, as seen below
 // BYTE format_tbl2[] = {0x01,0x00,0x01,0x00,0x22,0x56,0x00,0x00,0x22,0x56,0x00,0x00,0x01,0x00,0x08,0x00,0x00,0x00};	// 22050HzのFormat
@@ -240,7 +232,7 @@
 	return TRUE;
 }
 
-static const short freq_tbl[12] = {262, 277, 294, 311, 330, 349, 370, 392, 415, 440, 466, 494};
+short freq_tbl[12] = {262, 277, 294, 311, 330, 349, 370, 392, 415, 440, 466, 494};
 
 void ChangeOrganFrequency(unsigned char key, signed char track, long a)
 {
@@ -252,7 +244,8 @@
 			lpORGANBUFFER[track][j][i]->SetFrequency(((oct_wave[j].wave_size * freq_tbl[key]) * oct_wave[j].oct_par) / 8 + (a - 1000));	// 1000を+αのデフォルト値とする (1000 is the default value for + α)
 }
 
-const short pan_tbl[13] = {0, 43, 86, 129, 172, 215, 256, 297, 340, 383, 426, 469, 512};
+BOOL g_mute[MAXTRACK];	// Used by the debug Mute menu
+short pan_tbl[13] = {0, 43, 86, 129, 172, 215, 256, 297, 340, 383, 426, 469, 512};
 unsigned char old_key[MAXTRACK] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};	// 再生中の音 (Sound being played)
 unsigned char key_on[MAXTRACK];	// キースイッチ (Key switch)
 unsigned char key_twin[MAXTRACK];	// 今使っているキー(連続時のノイズ防止の為に二つ用意) (Currently used keys (prepared for continuous noise prevention))
@@ -456,11 +449,11 @@
 	}
 }
 
+ORGDATA org_data;
+
 OrgData::OrgData(void)
 {
-	int i;
-
-	for (i = 0; i < MAXTRACK; i++)
+	for (int i = 0; i < MAXTRACK; i++)
 	{
 		info.tdata[i].note_list = NULL;
 		info.tdata[i].note_p = NULL;
@@ -477,8 +470,7 @@
 	info.repeat_x = info.dot * info.line * 0;
 	info.end_x = info.dot * info.line * 255;
 
-	int i;
-	for (i = 0; i < MAXTRACK; i++)
+	for (int i = 0; i < MAXTRACK; i++)
 	{
 		info.tdata[i].freq = 1000;
 		info.tdata[i].wave_no = 0;
@@ -597,8 +589,8 @@
 	}
 }
 
-static const char pass[7] = "Org-01";
-static const char pass2[7] = "Org-02";	// Pipi
+char pass[7] = "Org-01";
+char pass2[7] = "Org-02";	// Pipi
 
 BOOL OrgData::InitMusicData(const char *path)
 {
@@ -765,9 +757,9 @@
 /*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
 //グローバル変数 (Global variable)
 /*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
-static UINT ExactTime   = 13;	// 最小精度 (Minimum accuracy)
-static UINT TimerID;
-static BOOL nameless_flag;
+UINT ExactTime   = 13;	// 最小精度 (Minimum accuracy)
+UINT TimerID;
+BOOL nameless_flag;
 
 /*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
 // タイマー精度を設定する。 (Set timer accuracy.)
@@ -872,37 +864,41 @@
 }
 
 // Play data
-long play_p;
-NOTELIST *play_np[MAXTRACK];
+long PlayPos;	// Called 'play_p' in the source code release
+NOTELIST *np[MAXTRACK];
 long now_leng[MAXMELODY];
 
+int Volume = 100;
+int TrackVol[MAXTRACK];
+BOOL bFadeout = FALSE;
+
 void OrgData::PlayData(void)
 {
 	int i;
 
 	// Handle fading out
-	if (bFadeout && gOrgVolume)
-		gOrgVolume -= 2;
-	if (gOrgVolume < 0)
-		gOrgVolume = 0;
+	if (bFadeout && Volume)
+		Volume -= 2;
+	if (Volume < 0)
+		Volume = 0;
 
 	// メロディの再生 (Play melody)
 	for (i = 0; i < MAXMELODY; i++)
 	{
-		if (play_np[i] != NULL && play_p == play_np[i]->x)
+		if (np[i] != NULL && PlayPos == np[i]->x)
 		{
-			if (!g_mute[i] && play_np[i]->y != KEYDUMMY)	// 音が来た。 (The sound has come.)
+			if (!g_mute[i] && np[i]->y != KEYDUMMY)	// 音が来た。 (The sound has come.)
 			{
-				PlayOrganObject(play_np[i]->y, -1, i, info.tdata[i].freq);
-				now_leng[i] = play_np[i]->length;
+				PlayOrganObject(np[i]->y, -1, i, info.tdata[i].freq);
+				now_leng[i] = np[i]->length;
 			}
 
-			if (play_np[i]->pan != PANDUMMY)
-				ChangeOrganPan(play_np[i]->y, play_np[i]->pan, i);
-			if (play_np[i]->volume != VOLDUMMY)
-				gTrackVol[i] = play_np[i]->volume;
+			if (np[i]->pan != PANDUMMY)
+				ChangeOrganPan(np[i]->y, np[i]->pan, i);
+			if (np[i]->volume != VOLDUMMY)
+				TrackVol[i] = np[i]->volume;
 
-			play_np[i] = play_np[i]->to;	// 次の音符を指す (Points to the next note)
+			np[i] = np[i]->to;	// 次の音符を指す (Points to the next note)
 		}
 
 		if (now_leng[i] == 0)
@@ -911,36 +907,36 @@
 		if (now_leng[i] > 0)
 			now_leng[i]--;
 
-		if (play_np[i])
-			ChangeOrganVolume(play_np[i]->y, gTrackVol[i] * gOrgVolume / 0x7F, i);
+		if (np[i])
+			ChangeOrganVolume(np[i]->y, TrackVol[i] * Volume / 0x7F, i);
 	}
 
 	// ドラムの再生 (Drum playback)
 	for (i = MAXMELODY; i < MAXTRACK; i++)
 	{
-		if (play_np[i] != NULL && play_p == play_np[i]->x)	// 音が来た。 (The sound has come.)
+		if (np[i] != NULL && PlayPos == np[i]->x)	// 音が来た。 (The sound has come.)
 		{
-			if (play_np[i]->y != KEYDUMMY && !g_mute[i])	// ならす (Tame)
-				PlayDramObject(play_np[i]->y, 1, i - MAXMELODY);
+			if (np[i]->y != KEYDUMMY && !g_mute[i])	// ならす (Tame)
+				PlayDramObject(np[i]->y, 1, i - MAXMELODY);
 
-			if (play_np[i]->pan != PANDUMMY)
-				ChangeDramPan(play_np[i]->pan, i - MAXMELODY);
-			if (play_np[i]->volume != VOLDUMMY)
-				gTrackVol[i] = play_np[i]->volume;
+			if (np[i]->pan != PANDUMMY)
+				ChangeDramPan(np[i]->pan, i - MAXMELODY);
+			if (np[i]->volume != VOLDUMMY)
+				TrackVol[i] = np[i]->volume;
 
-			play_np[i] = play_np[i]->to;	// 次の音符を指す (Points to the next note)
+			np[i] = np[i]->to;	// 次の音符を指す (Points to the next note)
 		}
 
-		if (play_np[i])
-			ChangeDramVolume(gTrackVol[i] * gOrgVolume / 0x7F, i - MAXMELODY);
+		if (np[i])
+			ChangeDramVolume(TrackVol[i] * Volume / 0x7F, i - MAXMELODY);
 	}
 
 	// Looping
-	play_p++;
-	if (play_p >= info.end_x)
+	PlayPos++;
+	if (PlayPos >= info.end_x)
 	{
-		play_p = info.repeat_x;
-		SetPlayPointer(play_p);
+		PlayPos = info.repeat_x;
+		SetPlayPointer(PlayPos);
 	}
 }
 
@@ -948,12 +944,12 @@
 {
 	for (int i = 0; i < MAXTRACK; i++)
 	{
-		play_np[i] = info.tdata[i].note_list;
-		while (play_np[i] != NULL && play_np[i]->x < x)
-			play_np[i] = play_np[i]->to;	// 見るべき音符を設定 (Set note to watch)
+		np[i] = info.tdata[i].note_list;
+		while (np[i] != NULL && np[i]->x < x)
+			np[i] = np[i]->to;	// 見るべき音符を設定 (Set note to watch)
 	}
 
-	play_p = x;
+	PlayPos = x;
 }
 
 // Start and end organya
@@ -979,7 +975,7 @@
 	if (!org_data.InitMusicData(name))
 		return FALSE;
 
-	gOrgVolume = 100;
+	Volume = 100;
 	bFadeout = 0;
 
 #ifdef FIX_BUGS
@@ -995,7 +991,7 @@
 		return;
 
 	org_data.SetPlayPointer(x);
-	gOrgVolume = 100;
+	Volume = 100;
 	bFadeout = FALSE;
 }
 
@@ -1004,7 +1000,7 @@
 	if (lpDS == NULL)
 		return 0;
 
-	return play_p;
+	return PlayPos;
 }
 
 void PlayOrganyaMusic(void)
@@ -1025,7 +1021,7 @@
 	if (volume < 0 || volume > 100)
 		return FALSE;
 
-	gOrgVolume = volume;
+	Volume = volume;
 	return TRUE;
 }