Index: /BasicCompiler_Common/DataTable.cpp
===================================================================
--- /BasicCompiler_Common/DataTable.cpp	(revision 60)
+++ /BasicCompiler_Common/DataTable.cpp	(revision 60)
@@ -0,0 +1,91 @@
+#include "common.h"
+
+DataTable dataTable;
+
+DataTable::DataTable(){
+	pdata = malloc( 1 );
+	size = 0;
+}
+DataTable::~DataTable(){
+	free( pdata );
+}
+
+void DataTable::Init(){
+	free( pdata );
+
+	pdata = malloc( 1 );
+	size = 0;
+}
+
+int DataTable::AddBinary( const void *pdata, int size ){
+	int retSize = this->size;
+
+	this->pdata = realloc( this->pdata, this->size + size );
+	memcpy( (char *)this->pdata + this->size, pdata, size );
+	this->size += size;
+
+	return retSize;
+}
+int DataTable::Add( _int64 i64data ){
+	int retSize = size;
+	AddBinary( &i64data, sizeof( _int64 ) );
+	return retSize;
+}
+int DataTable::Add( int i32data ){
+	int retSize = size;
+	AddBinary( &i32data, sizeof( int ) );
+	return retSize;
+}
+int DataTable::Add( double dbl ){
+	int retSize = size;
+	AddBinary( &dbl, sizeof( double ) );
+	return retSize;
+}
+int DataTable::Add( float flt ){
+	int retSize = size;
+	AddBinary( &flt, sizeof( float ) );
+	return retSize;
+}
+int DataTable::AddString( const char *str, int length ){
+	int retSize = size;
+
+	if( isUnicode ){
+		//Shift-JIS → Unicode
+		int size = MultiByteToWideChar(
+			CP_ACP,
+			0,
+			str, length + 1,
+			NULL, 0 ) * 2;
+
+		LPWSTR pwstr = (LPWSTR)malloc( size );
+
+		MultiByteToWideChar(
+			CP_ACP,
+			0,
+			str, length + 1,
+			pwstr, length + 1 );
+
+		AddBinary( pwstr, size );
+
+		free( pwstr );
+	}
+	else{
+		AddBinary( str, length + 1 );
+	}
+
+	return retSize;
+}
+int DataTable::AddString( const char *str ){
+	int retSize = size;
+	AddString( str, lstrlen( str ) );
+	return retSize;
+}
+
+const void *DataTable::GetPtr() const
+{
+	return pdata;
+}
+int DataTable::GetSize() const
+{
+	return size;
+}
Index: /BasicCompiler_Common/common.h
===================================================================
--- /BasicCompiler_Common/common.h	(revision 59)
+++ /BasicCompiler_Common/common.h	(revision 60)
@@ -43,7 +43,7 @@
 
 #ifdef _AMD64_
-#define VER_INFO		"β12 (x64)"
+#define VER_INFO		"β13 (x64)"
 #else
-#define VER_INFO		"β12"
+#define VER_INFO		"β13"
 #endif
 
