summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
Diffstat (limited to 'includes')
-rw-r--r--includes/cdabstract.h130
-rw-r--r--includes/cdreader.h132
-rw-r--r--includes/cdutils.h278
-rw-r--r--includes/dte.h38
-rw-r--r--includes/gettext.h116
-rw-r--r--includes/isobuilder.h210
-rw-r--r--includes/luacd.h184
-rw-r--r--includes/luapsx.h68
-rw-r--r--includes/lzss.h162
-rw-r--r--includes/mips.h36
-rw-r--r--includes/mipsdis.h108
-rw-r--r--includes/mipsdump.h146
-rw-r--r--includes/mipsmem.h228
-rw-r--r--includes/mipsobj.h148
-rw-r--r--includes/yazedc.h220
15 files changed, 1102 insertions, 1102 deletions
diff --git a/includes/cdabstract.h b/includes/cdabstract.h
index a5dcd0e..1a49c07 100644
--- a/includes/cdabstract.h
+++ b/includes/cdabstract.h
@@ -1,65 +1,65 @@
-/*
- * PSX-Tools Bundle Pack
- * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-/* $Id: cdabstract.h,v 1.6 2004-11-27 21:44:46 pixel Exp $ */
-
-#ifndef __CD_ABSTRACT_H__
-#define __CD_ABSTRACT_H__
-
-#if defined (_MSC_VER) || defined (__MINGW32__)
-#include <windowsx.h>
-
-#define IOCTL_SCSI_BASE 0x00000004
-
-#define METHOD_BUFFERED 0
-#define METHOD_OUT_DIRECT 2
-
-#define FILE_ANY_ACCESS 0
-#define FILE_READ_ACCESS 0x0001
-
-#define CTL_CODE( DevType, Function, Method, Access ) ( \
- ((DevType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method) \
-)
-#define IOCTL_SCSI_GET_ADDRESS CTL_CODE( IOCTL_SCSI_BASE, 0x0406, METHOD_BUFFERED, FILE_ANY_ACCESS )
-#define FILE_DEVICE_CD_ROM 0x00000002
-#define IOCTL_CDROM_BASE FILE_DEVICE_CD_ROM
-#define IOCTL_CDROM_RAW_READ CTL_CODE(IOCTL_CDROM_BASE, 0x000F, METHOD_OUT_DIRECT, FILE_READ_ACCESS)
-
-#endif
-
-#include <vector>
-#include <Exceptions.h>
-#include <Handle.h>
-
-class cdabstract : public Base {
- public:
- static Handle * open_cd(const String &);
- static bool canprobe();
- static std::vector<String> probe() throw (GeneralException);
-#ifdef _WIN32
- protected:
- static HANDLE OpenIOCTLFile(char cLetter);
- static void GetIOCTLAdapter(HANDLE hF, int * iDA, int * iDT, int * iDL);
-#endif
- private:
- static bool subprobe(String &);
- friend class cdreader;
-};
-
-#endif
+/*
+ * PSX-Tools Bundle Pack
+ * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
+ *
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/* $Id: cdabstract.h,v 1.7 2004-11-27 21:47:53 pixel Exp $ */
+
+#ifndef __CD_ABSTRACT_H__
+#define __CD_ABSTRACT_H__
+
+#if defined (_MSC_VER) || defined (__MINGW32__)
+#include <windowsx.h>
+
+#define IOCTL_SCSI_BASE 0x00000004
+
+#define METHOD_BUFFERED 0
+#define METHOD_OUT_DIRECT 2
+
+#define FILE_ANY_ACCESS 0
+#define FILE_READ_ACCESS 0x0001
+
+#define CTL_CODE( DevType, Function, Method, Access ) ( \
+ ((DevType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method) \
+)
+#define IOCTL_SCSI_GET_ADDRESS CTL_CODE( IOCTL_SCSI_BASE, 0x0406, METHOD_BUFFERED, FILE_ANY_ACCESS )
+#define FILE_DEVICE_CD_ROM 0x00000002
+#define IOCTL_CDROM_BASE FILE_DEVICE_CD_ROM
+#define IOCTL_CDROM_RAW_READ CTL_CODE(IOCTL_CDROM_BASE, 0x000F, METHOD_OUT_DIRECT, FILE_READ_ACCESS)
+
+#endif
+
+#include <vector>
+#include <Exceptions.h>
+#include <Handle.h>
+
+class cdabstract : public Base {
+ public:
+ static Handle * open_cd(const String &);
+ static bool canprobe();
+ static std::vector<String> probe() throw (GeneralException);
+#ifdef _WIN32
+ protected:
+ static HANDLE OpenIOCTLFile(char cLetter);
+ static void GetIOCTLAdapter(HANDLE hF, int * iDA, int * iDT, int * iDL);
+#endif
+ private:
+ static bool subprobe(String &);
+ friend class cdreader;
+};
+
+#endif
diff --git a/includes/cdreader.h b/includes/cdreader.h
index 6b01efc..7d0d15e 100644
--- a/includes/cdreader.h
+++ b/includes/cdreader.h
@@ -1,66 +1,66 @@
-/*
- * PSX-Tools Bundle Pack
- * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-/* $Id: cdreader.h,v 1.11 2004-11-27 21:44:46 pixel Exp $ */
-
-#ifndef __CDREADER_H__
-#define __CDREADER_H__
-
-#include <sys/types.h>
-#include <time.h>
-#include <BString.h>
-#include <Handle.h>
-#include "cdabstract.h"
-
-class cdreader : public Handle {
- public:
- cdreader(const String &) throw (GeneralException);
- cdreader(const cdreader &);
- virtual ~cdreader();
- virtual bool CanWrite() const;
- virtual bool CanRead() const;
- virtual bool CanSeek() const;
-#if defined (_MSC_VER) || defined (__MINGW32__)
- virtual void close() throw (GeneralException);
-#endif
- virtual ssize_t read(void *buf, size_t count) throw (GeneralException);
- virtual off_t seek(off_t, int = SEEK_SET) throw (GeneralException);
- virtual String GetName() const;
- virtual ssize_t GetSize() const;
- void fetchsector(void *, int = -1);
- void getsector(void *, int = -1, int = 1) throw (GeneralException);
- void sectorseek(int);
-
- private:
- struct cachedsector {
- Byte sector[2352];
- cachedsector * next, * prev;
- int n;
- };
- String n;
- int sector;
- cachedsector * head, * tail, * sectors[400000];
- int nsectors;
-
- void removetail();
- void actualize(cachedsector * s);
- void introduce(Byte * datas, int n);
-};
-
-#endif
+/*
+ * PSX-Tools Bundle Pack
+ * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
+ *
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/* $Id: cdreader.h,v 1.12 2004-11-27 21:47:53 pixel Exp $ */
+
+#ifndef __CDREADER_H__
+#define __CDREADER_H__
+
+#include <sys/types.h>
+#include <time.h>
+#include <BString.h>
+#include <Handle.h>
+#include "cdabstract.h"
+
+class cdreader : public Handle {
+ public:
+ cdreader(const String &) throw (GeneralException);
+ cdreader(const cdreader &);
+ virtual ~cdreader();
+ virtual bool CanWrite() const;
+ virtual bool CanRead() const;
+ virtual bool CanSeek() const;
+#if defined (_MSC_VER) || defined (__MINGW32__)
+ virtual void close() throw (GeneralException);
+#endif
+ virtual ssize_t read(void *buf, size_t count) throw (GeneralException);
+ virtual off_t seek(off_t, int = SEEK_SET) throw (GeneralException);
+ virtual String GetName() const;
+ virtual ssize_t GetSize() const;
+ void fetchsector(void *, int = -1);
+ void getsector(void *, int = -1, int = 1) throw (GeneralException);
+ void sectorseek(int);
+
+ private:
+ struct cachedsector {
+ Byte sector[2352];
+ cachedsector * next, * prev;
+ int n;
+ };
+ String n;
+ int sector;
+ cachedsector * head, * tail, * sectors[400000];
+ int nsectors;
+
+ void removetail();
+ void actualize(cachedsector * s);
+ void introduce(Byte * datas, int n);
+};
+
+#endif
diff --git a/includes/cdutils.h b/includes/cdutils.h
index 2f59341..3e11ca2 100644
--- a/includes/cdutils.h
+++ b/includes/cdutils.h
@@ -1,139 +1,139 @@
-/*
- * PSX-Tools Bundle Pack
- * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-/* $Id: cdutils.h,v 1.17 2004-11-27 21:44:46 pixel Exp $ */
-
-#ifndef __CDUTILS_H__
-#define __CDUTILS_H__
-
-#include "yazedc.h"
-#include "generic.h"
-
-#include "Handle.h"
-
-#define MODE0 0
-#define MODE1 1
-#define MODE2 2
-#define MODE2_FORM1 3
-#define MODE2_FORM2 4
-#define MODE_RAW 5
-#define GUESS 6
-
-extern const long sec_sizes[];
-extern const long sec_offsts[];
-extern const String sec_modes[];
-
-#ifdef _MSC_VER
-#pragma pack(1)
-#endif
-
-class cdutils : public Base {
- public:
- cdutils(Handle * f_iso_r, Handle * f_iso_w = 0);
- virtual ~cdutils();
-
- PPACKED struct DirEntry {
- unsigned char R;
- unsigned char NExt;
- unsigned long Sector;
- unsigned long BESector;
- unsigned long Size;
- unsigned long BESize;
- unsigned char Year;
- unsigned char Month;
- unsigned char Day;
- unsigned char Hour;
- unsigned char Minute;
- unsigned char Second;
- unsigned char Offset;
- unsigned char Flags;
- unsigned char HandleUnit;
- unsigned char HandleGap;
- unsigned short VolSeq;
- unsigned short BEVolSeq;
- unsigned char N;
- char id[1];
- } PACKED;
-
- struct DirEntry * rootDir;
-
- Handle * open_ppf(String ppf, String comment) throw(GeneralException);
- void close_ppf() throw(GeneralException);
- void set_iso_w(Handle *);
- static unsigned short int swap_word(unsigned short int i);
- static unsigned long int swap_dword(unsigned long int i);
- int guess_type(int number = -1);
- void sector_seek(long sector);
- long read_sector(Byte * buffer, int type = GUESS, int number = -1);
- void read_datas(Byte * buffer, long size, int type = GUESS, int number = -1);
- void read_file(Handle * Handle, long size, int type = GUESS, int number = -1);
- void write_sector(Byte * buffer, int type = GUESS, int number = -1) throw (GeneralException);
- void write_datas(Byte * buffer, long size, int type = GUESS, int number = -1);
- void write_file(Handle * Handle, long size = -1, int type = GUESS, int number = -1);
- void create_sector(int type, int number, bool eof = false) throw (GeneralException);
- int get_iso_infos();
- int show_iso_infos();
- int get_pt_infos();
- int show_pt_infos();
- struct DirEntry find_path(String path);
- struct DirEntry find_parent(String path);
- struct DirEntry * find_path(Byte ** buffer, String path);
- struct DirEntry * find_parent(Byte ** buffer, String path);
- void show_head_entry(void);
- int show_entry(struct DirEntry * dir);
- int show_dir(struct DirEntry * dir);
- struct DirEntry find_dir_entry(struct DirEntry * dir, String name);
- struct DirEntry * find_dir_entry(Byte ** buffer, struct DirEntry * dir, String name);
- static unsigned char from_BCD(unsigned char x);
- static unsigned char to_BCD(unsigned char x);
- static bool is_valid_BCD(unsigned char x);
- static unsigned long from_MSF(unsigned long msf, unsigned long start = 150);
- static unsigned long from_MSF(unsigned char m, unsigned char s, unsigned char f, unsigned long start = 150);
- static unsigned long to_MSF(int sect, unsigned long start = 150);
- static void to_MSF(int sect, unsigned char & m, unsigned char & s, unsigned char & f, unsigned long start = 150);
- private:
- void write_ppf(Byte * old_sec, Byte * new_sec, int sec_num);
- String format_date(String input);
- yazedc yazedc_o;
-
- Handle * f_iso_r, * f_iso_w, * ppf_file;
- int pt1, pt2, snum, ptl, root;
-};
-
-class cdfile : public Handle {
- public:
- cdfile(cdutils *, const cdutils::DirEntry *, int = GUESS);
- cdfile(cdutils *, int sector, ssize_t = -1, int = GUESS);
- virtual ~cdfile();
- virtual ssize_t read(void *buf, size_t count) throw (GeneralException);
- virtual bool CanRead() const;
- virtual String GetName() const;
- virtual bool CanWatch() const;
- virtual ssize_t GetSize() const;
- virtual bool CanSeek() const;
- virtual off_t seek(off_t, int = SEEK_SET) throw (GeneralException);
- private:
- cdutils * cd;
- int sector, mode;
- size_t size;
- String name;
- cdutils::DirEntry * dir;
-};
-
-#endif
+/*
+ * PSX-Tools Bundle Pack
+ * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
+ *
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/* $Id: cdutils.h,v 1.18 2004-11-27 21:47:53 pixel Exp $ */
+
+#ifndef __CDUTILS_H__
+#define __CDUTILS_H__
+
+#include "yazedc.h"
+#include "generic.h"
+
+#include "Handle.h"
+
+#define MODE0 0
+#define MODE1 1
+#define MODE2 2
+#define MODE2_FORM1 3
+#define MODE2_FORM2 4
+#define MODE_RAW 5
+#define GUESS 6
+
+extern const long sec_sizes[];
+extern const long sec_offsts[];
+extern const String sec_modes[];
+
+#ifdef _MSC_VER
+#pragma pack(1)
+#endif
+
+class cdutils : public Base {
+ public:
+ cdutils(Handle * f_iso_r, Handle * f_iso_w = 0);
+ virtual ~cdutils();
+
+ PPACKED struct DirEntry {
+ unsigned char R;
+ unsigned char NExt;
+ unsigned long Sector;
+ unsigned long BESector;
+ unsigned long Size;
+ unsigned long BESize;
+ unsigned char Year;
+ unsigned char Month;
+ unsigned char Day;
+ unsigned char Hour;
+ unsigned char Minute;
+ unsigned char Second;
+ unsigned char Offset;
+ unsigned char Flags;
+ unsigned char HandleUnit;
+ unsigned char HandleGap;
+ unsigned short VolSeq;
+ unsigned short BEVolSeq;
+ unsigned char N;
+ char id[1];
+ } PACKED;
+
+ struct DirEntry * rootDir;
+
+ Handle * open_ppf(String ppf, String comment) throw(GeneralException);
+ void close_ppf() throw(GeneralException);
+ void set_iso_w(Handle *);
+ static unsigned short int swap_word(unsigned short int i);
+ static unsigned long int swap_dword(unsigned long int i);
+ int guess_type(int number = -1);
+ void sector_seek(long sector);
+ long read_sector(Byte * buffer, int type = GUESS, int number = -1);
+ void read_datas(Byte * buffer, long size, int type = GUESS, int number = -1);
+ void read_file(Handle * Handle, long size, int type = GUESS, int number = -1);
+ void write_sector(Byte * buffer, int type = GUESS, int number = -1) throw (GeneralException);
+ void write_datas(Byte * buffer, long size, int type = GUESS, int number = -1);
+ void write_file(Handle * Handle, long size = -1, int type = GUESS, int number = -1);
+ void create_sector(int type, int number, bool eof = false) throw (GeneralException);
+ int get_iso_infos();
+ int show_iso_infos();
+ int get_pt_infos();
+ int show_pt_infos();
+ struct DirEntry find_path(String path);
+ struct DirEntry find_parent(String path);
+ struct DirEntry * find_path(Byte ** buffer, String path);
+ struct DirEntry * find_parent(Byte ** buffer, String path);
+ void show_head_entry(void);
+ int show_entry(struct DirEntry * dir);
+ int show_dir(struct DirEntry * dir);
+ struct DirEntry find_dir_entry(struct DirEntry * dir, String name);
+ struct DirEntry * find_dir_entry(Byte ** buffer, struct DirEntry * dir, String name);
+ static unsigned char from_BCD(unsigned char x);
+ static unsigned char to_BCD(unsigned char x);
+ static bool is_valid_BCD(unsigned char x);
+ static unsigned long from_MSF(unsigned long msf, unsigned long start = 150);
+ static unsigned long from_MSF(unsigned char m, unsigned char s, unsigned char f, unsigned long start = 150);
+ static unsigned long to_MSF(int sect, unsigned long start = 150);
+ static void to_MSF(int sect, unsigned char & m, unsigned char & s, unsigned char & f, unsigned long start = 150);
+ private:
+ void write_ppf(Byte * old_sec, Byte * new_sec, int sec_num);
+ String format_date(String input);
+ yazedc yazedc_o;
+
+ Handle * f_iso_r, * f_iso_w, * ppf_file;
+ int pt1, pt2, snum, ptl, root;
+};
+
+class cdfile : public Handle {
+ public:
+ cdfile(cdutils *, const cdutils::DirEntry *, int = GUESS);
+ cdfile(cdutils *, int sector, ssize_t = -1, int = GUESS);
+ virtual ~cdfile();
+ virtual ssize_t read(void *buf, size_t count) throw (GeneralException);
+ virtual bool CanRead() const;
+ virtual String GetName() const;
+ virtual bool CanWatch() const;
+ virtual ssize_t GetSize() const;
+ virtual bool CanSeek() const;
+ virtual off_t seek(off_t, int = SEEK_SET) throw (GeneralException);
+ private:
+ cdutils * cd;
+ int sector, mode;
+ size_t size;
+ String name;
+ cdutils::DirEntry * dir;
+};
+
+#endif
diff --git a/includes/dte.h b/includes/dte.h
index f464084..3be7f9c 100644
--- a/includes/dte.h
+++ b/includes/dte.h
@@ -1,19 +1,19 @@
-#ifndef __DTE_H__
-#define __DTE_H__
-
-void dte_reset(void);
-void build_dte(void);
-void push_entry(long entry);
-char * read_line(Handle * f, char * b);
-void dte_compress();
-void read_thingy(Handle * f);
-void read_thingy_file(Handle * f);
-
-extern char * dte_text;
-extern char * things[256];
-extern long dte_text_size;
-extern long dte_usage[256];
-
-extern long tnb_dte;
-
-#endif
+#ifndef __DTE_H__
+#define __DTE_H__
+
+void dte_reset(void);
+void build_dte(void);
+void push_entry(long entry);
+char * read_line(Handle * f, char * b);
+void dte_compress();
+void read_thingy(Handle * f);
+void read_thingy_file(Handle * f);
+
+extern char * dte_text;
+extern char * things[256];
+extern long dte_text_size;
+extern long dte_usage[256];
+
+extern long tnb_dte;
+
+#endif
diff --git a/includes/gettext.h b/includes/gettext.h
index 36573bc..c37de7f 100644
--- a/includes/gettext.h
+++ b/includes/gettext.h
@@ -1,58 +1,58 @@
-#ifndef __GETTEXT_H__
-#define __GETTEXT_H__
-
-#ifndef gettext
-# define gettext(Msgid) ((const char *) (Msgid))
-#endif
-
-#ifndef dgettext
-# define dgettext(Domainname, Msgid) ((const char *) (Msgid))
-#endif
-
-#ifndef dcgettext
-# define dcgettext(Domainname, Msgid, Category) ((const char *) (Msgid))
-#endif
-
-#ifndef ngettext
-# define ngettext(Msgid1, Msgid2, N) \
- ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
-#endif
-
-#ifndef dngettext
-# define dngettext(Domainname, Msgid1, Msgid2, N) \
- ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
-#endif
-
-#ifndef dcngettext
-# define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \
- ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
-#endif
-
-#ifndef textdomain
-# define textdomain(Domainname) ((const char *) (Domainname))
-#endif
-
-#ifndef bindtextdomain
-# define bindtextdomain(Domainname, Dirname) ((const char *) (Dirname))
-#endif
-
-#ifndef bind_text_domain_codeset
-# define bind_textdomain_codeset(Domainname, Codeset) ((const char *) (Codeset))
-#endif
-
-#ifndef setlocale
-# define setlocale(category, locale)
-#endif
-
-#ifndef LC_ALL
-# define LC_ALL 0
-#endif
-
-#ifndef gettext_noop
-# define gettext_noop(String) String
-#endif
-
-#define _(Text) dgettext ("bleh", Text)
-#define N_(Text) Text
-
-#endif
+#ifndef __GETTEXT_H__
+#define __GETTEXT_H__
+
+#ifndef gettext
+# define gettext(Msgid) ((const char *) (Msgid))
+#endif
+
+#ifndef dgettext
+# define dgettext(Domainname, Msgid) ((const char *) (Msgid))
+#endif
+
+#ifndef dcgettext
+# define dcgettext(Domainname, Msgid, Category) ((const char *) (Msgid))
+#endif
+
+#ifndef ngettext
+# define ngettext(Msgid1, Msgid2, N) \
+ ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
+#endif
+
+#ifndef dngettext
+# define dngettext(Domainname, Msgid1, Msgid2, N) \
+ ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
+#endif
+
+#ifndef dcngettext
+# define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \
+ ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
+#endif
+
+#ifndef textdomain
+# define textdomain(Domainname) ((const char *) (Domainname))
+#endif
+
+#ifndef bindtextdomain
+# define bindtextdomain(Domainname, Dirname) ((const char *) (Dirname))
+#endif
+
+#ifndef bind_text_domain_codeset
+# define bind_textdomain_codeset(Domainname, Codeset) ((const char *) (Codeset))
+#endif
+
+#ifndef setlocale
+# define setlocale(category, locale)
+#endif
+
+#ifndef LC_ALL
+# define LC_ALL 0
+#endif
+
+#ifndef gettext_noop
+# define gettext_noop(String) String
+#endif
+
+#define _(Text) dgettext ("bleh", Text)
+#define N_(Text) Text
+
+#endif
diff --git a/includes/isobuilder.h b/includes/isobuilder.h
index d693651..9ced22c 100644
--- a/includes/isobuilder.h
+++ b/includes/isobuilder.h
@@ -1,105 +1,105 @@
-/*
- * PSX-Tools Bundle Pack
- * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-/* $Id: isobuilder.h,v 1.10 2004-11-27 21:44:46 pixel Exp $ */
-
-#ifndef __ISOBUILDER_H__
-#define __ISOBUILDER_H__
-
-#include <Handle.h>
-#include "cdutils.h"
-#include "yazedc.h"
-
-class isobuilder : public Base {
- public:
- struct Date {
- int year, month, day, hour, minute, second, hundredths, offset;
- void dump(Byte * datas);
- Date(int = 0);
- Date(Byte * datas);
- };
- struct PVD {
- String sysid, volid;
- String volsetid, pubid, prepid, appid;
- String copyright, abstract, biblio;
- Date volcreat, modif, volexp, voleff;
- Byte appdata[512];
- };
- class DirTree : public Base {
- public:
- DirTree(DirTree * father, bool dir = true);
- virtual ~DirTree();
- void fromdir(cdutils::DirEntry *);
- void dumpdirs(isobuilder *) throw (GeneralException);
- int buildpath(Byte * datas, int size, bool bigendian = false) throw (GeneralException);
- bool isdir();
- void setbasicsxa();
- int sector;
- int size;
- bool hidden;
- bool hardhide;
- String name;
- Date creation;
- bool have_xa, xa_dir, xa_audio, xa_str, xa_xa, xa_form1;
- int buildentry(Byte * buffer, int spaceleft, bool put_xa = true);
- int mode;
- DirTree * Father();
- DirTree * Child();
- DirTree * Brother();
- DirTree * Find(const String &);
- private:
- DirTree * father, * child, * brother;
- bool dir;
- int node;
- int numerate(int);
- };
- isobuilder(Handle * w, int mode = MODE2_FORM1);
- ~isobuilder();
- void foreword(cdutils *);
- void foreword(Handle * forewords, int mode = MODE_RAW);
- void foreword(Byte * forewords, int mode = MODE_RAW);
- int getdispsect();
- int putfile(Handle * file, int mode = -1, int sector = -1);
- int putdatas(Byte * datas, size_t size, int mode = -1, int sector = -1);
- int createsector(Byte * datas, int mode = -1, int sector = -1);
- void setEOF();
- void clearEOF();
- DirTree * setbasics(PVD pvd, int rootsize = 1, int ptsize = 1, int nvd = 1, int rootsect = -1) throw (GeneralException);
- DirTree * createdir(DirTree *, const String & _name, int size = 1, cdutils::DirEntry * = 0, int mode = -1) throw (GeneralException);
- DirTree * createfile(DirTree *, Handle * file, const String & _name, cdutils::DirEntry * = 0, int mode = -1) throw (GeneralException);
- void copydir(DirTree *, cdutils *, cdutils::DirEntry *, int mode = -1);
- static PVD createpvd(Handle *);
- static PVD createpvd(cdutils *);
- static PVD createpvd(Byte *);
- void close(Handle * cue = 0, int mode = -1, int nsects = -1) throw (GeneralException);
- private:
- Handle * w;
- int sector, nsectors;
- int sub_EOF, sub_EOR;
- bool basics;
- PVD pvd;
- int rootsize, ptsize, nvd, ptsect, rootsect;
- int lastdispsect;
- DirTree * root;
- yazedc yazedc_o;
- bool closed;
- int dmode;
-};
-
-#endif
+/*
+ * PSX-Tools Bundle Pack
+ * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
+ *
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/* $Id: isobuilder.h,v 1.11 2004-11-27 21:47:53 pixel Exp $ */
+
+#ifndef __ISOBUILDER_H__
+#define __ISOBUILDER_H__
+
+#include <Handle.h>
+#include "cdutils.h"
+#include "yazedc.h"
+
+class isobuilder : public Base {
+ public:
+ struct Date {
+ int year, month, day, hour, minute, second, hundredths, offset;
+ void dump(Byte * datas);
+ Date(int = 0);
+ Date(Byte * datas);
+ };
+ struct PVD {
+ String sysid, volid;
+ String volsetid, pubid, prepid, appid;
+ String copyright, abstract, biblio;
+ Date volcreat, modif, volexp, voleff;
+ Byte appdata[512];
+ };
+ class DirTree : public Base {
+ public:
+ DirTree(DirTree * father, bool dir = true);
+ virtual ~DirTree();
+ void fromdir(cdutils::DirEntry *);
+ void dumpdirs(isobuilder *) throw (GeneralException);
+ int buildpath(Byte * datas, int size, bool bigendian = false) throw (GeneralException);
+ bool isdir();
+ void setbasicsxa();
+ int sector;
+ int size;
+ bool hidden;
+ bool hardhide;
+ String name;
+ Date creation;
+ bool have_xa, xa_dir, xa_audio, xa_str, xa_xa, xa_form1;
+ int buildentry(Byte * buffer, int spaceleft, bool put_xa = true);
+ int mode;
+ DirTree * Father();
+ DirTree * Child();
+ DirTree * Brother();
+ DirTree * Find(const String &);
+ private:
+ DirTree * father, * child, * brother;
+ bool dir;
+ int node;
+ int numerate(int);
+ };
+ isobuilder(Handle * w, int mode = MODE2_FORM1);
+ ~isobuilder();
+ void foreword(cdutils *);
+ void foreword(Handle * forewords, int mode = MODE_RAW);
+ void foreword(Byte * forewords, int mode = MODE_RAW);
+ int getdispsect();
+ int putfile(Handle * file, int mode = -1, int sector = -1);
+ int putdatas(Byte * datas, size_t size, int mode = -1, int sector = -1);
+ int createsector(Byte * datas, int mode = -1, int sector = -1);
+ void setEOF();
+ void clearEOF();
+ DirTree * setbasics(PVD pvd, int rootsize = 1, int ptsize = 1, int nvd = 1, int rootsect = -1) throw (GeneralException);
+ DirTree * createdir(DirTree *, const String & _name, int size = 1, cdutils::DirEntry * = 0, int mode = -1) throw (GeneralException);
+ DirTree * createfile(DirTree *, Handle * file, const String & _name, cdutils::DirEntry * = 0, int mode = -1) throw (GeneralException);
+ void copydir(DirTree *, cdutils *, cdutils::DirEntry *, int mode = -1);
+ static PVD createpvd(Handle *);
+ static PVD createpvd(cdutils *);
+ static PVD createpvd(Byte *);
+ void close(Handle * cue = 0, int mode = -1, int nsects = -1) throw (GeneralException);
+ private:
+ Handle * w;
+ int sector, nsectors;
+ int sub_EOF, sub_EOR;
+ bool basics;
+ PVD pvd;
+ int rootsize, ptsize, nvd, ptsect, rootsect;
+ int lastdispsect;
+ DirTree * root;
+ yazedc yazedc_o;
+ bool closed;
+ int dmode;
+};
+
+#endif
diff --git a/includes/luacd.h b/includes/luacd.h
index f2c7e4a..1f7768f 100644
--- a/includes/luacd.h
+++ b/includes/luacd.h
@@ -1,92 +1,92 @@
-/*
- * PSX-Tools Bundle Pack
- * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-/* $Id: luacd.h,v 1.7 2004-11-27 21:44:46 pixel Exp $ */
-
-#ifndef __LUACD_H__
-#define __LUACD_H__
-
-#include <Exceptions.h>
-#include <BLua.h>
-#include <LuaHandle.h>
-#include <cdutils.h>
-#include <isobuilder.h>
-
-#define CD_PUSHSTATICS(L) { \
- Luacdutils::pushstatics(L); \
- Luacddate::pushstatics(L); \
- LuaPVD::pushstatics(L); \
- LuaDirTree::pushstatics(L); \
- Luaisobuilder::pushstatics(L); \
-}
-
-class Luacdutils : public LuaObject {
- public:
- static void pushstatics(Lua *) throw (GeneralException);
- Luacdutils(cdutils *);
- protected:
- virtual void pushmembers(Lua *);
- cdutils * cd;
-};
-
-class Luadirentry : public LuaObject {
- public:
- Luadirentry(cdutils::DirEntry *);
- protected:
- virtual void pushmembers(Lua *);
- cdutils::DirEntry * dir;
-};
-
-class Luacddate : public LuaObject {
- public:
- static void pushstatics(Lua *) throw (GeneralException);
- Luacddate(isobuilder::Date *);
- private:
- virtual void pushmembers(Lua *);
- struct isobuilder::Date * date;
-};
-
-class LuaPVD : public LuaObject {
- public:
- static void pushstatics(Lua *) throw (GeneralException);
- LuaPVD(struct isobuilder::PVD *);
- private:
- virtual void pushmembers(Lua *);
- struct isobuilder::PVD * pvd;
-};
-
-class LuaDirTree : public LuaObject {
- public:
- static void pushstatics(Lua *) throw (GeneralException);
- LuaDirTree(isobuilder::DirTree *);
- private:
- virtual void pushmembers(Lua *);
- isobuilder::DirTree * dir;
-};
-
-class Luaisobuilder : public LuaObject {
- public:
- static void pushstatics(Lua *) throw (GeneralException);
- Luaisobuilder(isobuilder *);
- private:
- virtual void pushmembers(Lua *);
- isobuilder * iso;
-};
-
-#endif
+/*
+ * PSX-Tools Bundle Pack
+ * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
+ *
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/* $Id: luacd.h,v 1.8 2004-11-27 21:47:53 pixel Exp $ */
+
+#ifndef __LUACD_H__
+#define __LUACD_H__
+
+#include <Exceptions.h>
+#include <BLua.h>
+#include <LuaHandle.h>
+#include <cdutils.h>
+#include <isobuilder.h>
+
+#define CD_PUSHSTATICS(L) { \
+ Luacdutils::pushstatics(L); \
+ Luacddate::pushstatics(L); \
+ LuaPVD::pushstatics(L); \
+ LuaDirTree::pushstatics(L); \
+ Luaisobuilder::pushstatics(L); \
+}
+
+class Luacdutils : public LuaObject {
+ public:
+ static void pushstatics(Lua *) throw (GeneralException);
+ Luacdutils(cdutils *);
+ protected:
+ virtual void pushmembers(Lua *);
+ cdutils * cd;
+};
+
+class Luadirentry : public LuaObject {
+ public:
+ Luadirentry(cdutils::DirEntry *);
+ protected:
+ virtual void pushmembers(Lua *);
+ cdutils::DirEntry * dir;
+};
+
+class Luacddate : public LuaObject {
+ public:
+ static void pushstatics(Lua *) throw (GeneralException);
+ Luacddate(isobuilder::Date *);
+ private:
+ virtual void pushmembers(Lua *);
+ struct isobuilder::Date * date;
+};
+
+class LuaPVD : public LuaObject {
+ public:
+ static void pushstatics(Lua *) throw (GeneralException);
+ LuaPVD(struct isobuilder::PVD *);
+ private:
+ virtual void pushmembers(Lua *);
+ struct isobuilder::PVD * pvd;
+};
+
+class LuaDirTree : public LuaObject {
+ public:
+ static void pushstatics(Lua *) throw (GeneralException);
+ LuaDirTree(isobuilder::DirTree *);
+ private:
+ virtual void pushmembers(Lua *);
+ isobuilder::DirTree * dir;
+};
+
+class Luaisobuilder : public LuaObject {
+ public:
+ static void pushstatics(Lua *) throw (GeneralException);
+ Luaisobuilder(isobuilder *);
+ private:
+ virtual void pushmembers(Lua *);
+ isobuilder * iso;
+};
+
+#endif
diff --git a/includes/luapsx.h b/includes/luapsx.h
index 4b8e6e7..740977c 100644
--- a/includes/luapsx.h
+++ b/includes/luapsx.h
@@ -1,34 +1,34 @@
- /*
- * PSX-Tools Bundle Pack
- * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-/* $Id: luapsx.h,v 1.4 2004-11-27 21:44:46 pixel Exp $ */
-
-#ifndef __LUAPSX_H__
-#define __LUAPSX_H__
-
-#include <Exceptions.h>
-#include <BLua.h>
-#include <bs.h>
-
-class Luapsx : public LuaObject {
- public:
- static void pushstatics(Lua *) throw (GeneralException);
-};
-
-#endif
+ /*
+ * PSX-Tools Bundle Pack
+ * Copyright (C) 2002-2003 Nicolas "Pixel" Noble
+ *
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/* $Id: luapsx.h,v 1.5 2004-11-27 21:47:53 pixel Exp $ */
+
+#ifndef __LUAPSX_H__
+#define __LUAPSX_H__
+
+#include <Exceptions.h>
+#include <BLua.h>
+#include <bs.h>
+
+class Luapsx : public LuaObject {
+ public:
+ static void pushstatics(Lua *) throw (GeneralException);
+};
+
+#endif
diff --git a/includes/lzss.h b/includes/lzss.h
index d4da684..14aa345 100644
--- a/includes/lzss.h
+++ b/includes/lzss.h
@@ -1,81 +1,81 @@
-/*
- * PSX-Tools Bundle Pack
- * Copyright (C) 2002 Nicolas "Pixel" Noble
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * aint with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef __LZSS_H__
-#define __LZSS_H__
-
-#include <stdio.h>
-#include "generic.h"
-#include "Handle.h"
-
-#define LZSS_VERSION String("3.0.0-pre1")
-#define LZSS_NAME String("lzss")
-
-class lzss : public Base {
- public:
- lzss();
- typedef struct {
- char * name;
- int one_is_compressed, bitmap_inversed, one_jump, overlap_trick, negative_trick, sixteen_bits, ptrb, filling;
- int window_start;
- int l_mask_1, l_shft_1, l_mask_2, l_shft_2;
- int j_mask_1, j_shft_1, j_mask_2, j_shft_2;
- int f_mask_1, f_shft_1, f_mask_2, f_shft_2;
- int v_mask_1, v_shft_1, v_mask_2, v_shft_2;
- } scheme_t;
-
- enum {
- XENO = 0,
- DBZ,
- FF7,
- LM,
- MM,
- OB,
- LODOSS,
- FF6,
- VP_1,
- VP_2,
- TOD,
- END
- };
-
- static const scheme_t schemes[];
- int tolerate, blockb;
- int blk, bitmap_count;
-
- unsigned int lzss_decomp(Handle * f_source, Handle * f_cible, int true_length = -1);
- void lzss_comp(Handle * f_source, Handle * f_cible, int * delta = NULL);
-
- Byte swap_bits(Byte);
-
- void change_scheme(scheme_t);
- scheme_t get_scheme();
-
- private:
- scheme_t scheme;
- int lzss_maxsize, lzss_maxptr;
-
- unsigned int shift(unsigned int, int);
- void compute_limits(void);
- unsigned char lzss_rd(unsigned char *, int);
- int lzss_comp_strstr(unsigned char *, unsigned char *, int *, int);
- unsigned char * lzss_memcomp(unsigned char *, int *, int *);
-};
-
-#endif
+/*
+ * PSX-Tools Bundle Pack
+ * Copyright (C) 2002 Nicolas "Pixel" Noble
+ *
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * aint with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef __LZSS_H__
+#define __LZSS_H__
+
+#include <stdio.h>
+#include "generic.h"
+#include "Handle.h"
+
+#define LZSS_VERSION String("3.0.0-pre1")
+#define LZSS_NAME String("lzss")
+
+class lzss : public Base {
+ public:
+ lzss();
+ typedef struct {
+ char * name;
+ int one_is_compressed, bitmap_inversed, one_jump, overlap_trick, negative_trick, sixteen_bits, ptrb, filling;
+ int window_start;
+ int l_mask_1, l_shft_1, l_mask_2, l_shft_2;
+ int j_mask_1, j_shft_1, j_mask_2, j_shft_2;
+ int f_mask_1, f_shft_1, f_mask_2, f_shft_2;
+ int v_mask_1, v_shft_1, v_mask_2, v_shft_2;
+ } scheme_t;
+
+ enum {
+ XENO = 0,
+ DBZ,
+ FF7,
+ LM,
+ MM,
+ OB,
+ LODOSS,
+ FF6,
+ VP_1,
+ VP_2,
+ TOD,
+ END
+ };
+
+ static const scheme_t schemes[];
+ int tolerate, blockb;
+ int blk, bitmap_count;
+
+ unsigned int lzss_decomp(Handle * f_source, Handle * f_cible, int true_length = -1);
+ void lzss_comp(Handle * f_source, Handle * f_cible, int * delta = NULL);
+
+ Byte swap_bits(Byte);
+
+ void change_scheme(scheme_t);
+ scheme_t get_scheme();
+
+ private:
+ scheme_t scheme;
+ int lzss_maxsize, lzss_maxptr;
+
+ unsigned int shift(unsigned int, int);
+ void compute_limits(void);
+ unsigned char lzss_rd(unsigned char *, int);
+ int lzss_comp_strstr(unsigned char *, unsigned char *, int *, int);
+ unsigned char * lzss_memcomp(unsigned char *, int *, int *);
+};
+
+#endif
diff --git a/includes/mips.h b/includes/mips.h
index f3fc911..8ace76f 100644
--- a/includes/mips.h
+++ b/includes/mips.h
@@ -1,18 +1,18 @@
-#ifndef __MIPS_H__
-#define __MIPS_H__
-
-#include "mipsdis.h"
-
-void decode(TDis * d, Uint32 pc);
-
-enum registers {
- Rzr, Rat, Rv0, Rv1, Ra0, Ra1, Ra2, Ra3,
- Rt0, Rt1, Rt2, Rt3, Rt4, Rt5, Rt6, Rt7,
- Rs0, Rs1, Rs2, Rs3, Rs4, Rs5, Rs6, Rs7,
- Rt8, Rt9, Rk0, Rk1, Rgp, Rsp, Rfp, Rra,
-};
-
-extern char * registers[];
-extern char * CP0registers[];
-
-#endif
+#ifndef __MIPS_H__
+#define __MIPS_H__
+
+#include "mipsdis.h"
+
+void decode(TDis * d, Uint32 pc);
+
+enum registers {
+ Rzr, Rat, Rv0, Rv1, Ra0, Ra1, Ra2, Ra3,
+ Rt0, Rt1, Rt2, Rt3, Rt4, Rt5, Rt6, Rt7,
+ Rs0, Rs1, Rs2, Rs3, Rs4, Rs5, Rs6, Rs7,
+ Rt8, Rt9, Rk0, Rk1, Rgp, Rsp, Rfp, Rra,
+};
+
+extern char * registers[];
+extern char * CP0registers[];
+
+#endif
diff --git a/includes/mipsdis.h b/includes/mipsdis.h
index e8644cc..5ce2506 100644
--- a/includes/mipsdis.h
+++ b/includes/mipsdis.h
@@ -1,54 +1,54 @@
-#ifndef __MIPSDIS_H__
-#define __MIPSDIS_H__
-#include <Exceptions.h>
-#include <queue>
-#include "mipsmem.h"
-
-class TDis : public Base {
- public:
- TDis(mipsmem *);
- virtual mipsmem * getmem();
- virtual void add_branch(Uint32);
- virtual void add_jump(Uint32);
- virtual void add_function(Uint32);
- virtual void SetTag(Uint32, int, bool);
- virtual void Name(const String &);
- virtual void PushGPReg(int);
- virtual void PushCPReg(int);
- virtual void PushImm(Uint32);
- virtual void PushTarget(Uint32);
- virtual void PushSa(Uint32);
- virtual void PushOfB(int reg, Uint32, int);
- virtual void PushOffset(Uint32);
- virtual void PushFull(Uint32);
- virtual void Invalid();
- virtual void Suspect();
- virtual void Comment(const String &);
-
- virtual void reset();
-
- bool invalid;
- std::priority_queue<int, std::vector<int>, std::greater<int> > bheap;
- std::priority_queue<int, std::vector<int>, std::greater<int> > jheap;
- std::priority_queue<int, std::vector<int>, std::greater<int> > fheap;
-
- Uint32 pc;
- private:
- mipsmem * mm;
-};
-
-class Disassembler : public Base {
- public:
- Disassembler(mipsmem *);
- virtual ~Disassembler();
- void mainloop();
- void crawl_code(Uint32 = 0xffffffff);
- private:
- mipsmem * mm;
- TDis * dis;
- bool started;
- bool infunction;
-};
-
-
-#endif
+#ifndef __MIPSDIS_H__
+#define __MIPSDIS_H__
+#include <Exceptions.h>
+#include <queue>
+#include "mipsmem.h"
+
+class TDis : public Base {
+ public:
+ TDis(mipsmem *);
+ virtual mipsmem * getmem();
+ virtual void add_branch(Uint32);
+ virtual void add_jump(Uint32);
+ virtual void add_function(Uint32);
+ virtual void SetTag(Uint32, int, bool);
+ virtual void Name(const String &);
+ virtual void PushGPReg(int);
+ virtual void PushCPReg(int);
+ virtual void PushImm(Uint32);
+ virtual void PushTarget(Uint32);
+ virtual void PushSa(Uint32);
+ virtual void PushOfB(int reg, Uint32, int);
+ virtual void PushOffset(Uint32);
+ virtual void PushFull(Uint32);
+ virtual void Invalid();
+ virtual void Suspect();
+ virtual void Comment(const String &);
+
+ virtual void reset();
+
+ bool invalid;
+ std::priority_queue<int, std::vector<int>, std::greater<int> > bheap;
+ std::priority_queue<int, std::vector<int>, std::greater<int> > jheap;
+ std::priority_queue<int, std::vector<int>, std::greater<int> > fheap;
+
+ Uint32 pc;
+ private:
+ mipsmem * mm;
+};
+
+class Disassembler : public Base {
+ public:
+ Disassembler(mipsmem *);
+ virtual ~Disassembler();
+ void mainloop();
+ void crawl_code(Uint32 = 0xffffffff);
+ private:
+ mipsmem * mm;
+ TDis * dis;
+ bool started;
+ bool infunction;
+};
+
+
+#endif
diff --git a/includes/mipsdump.h b/includes/mipsdump.h
index ca2047a..a6c6288 100644
--- a/includes/mipsdump.h
+++ b/includes/mipsdump.h
@@ -1,73 +1,73 @@
-#ifndef __MIPSDUMP_H__
-#define __MIPSDUMP_H__
-
-#include <Exceptions.h>
-#include <mipsdis.h>
-
-enum arg_type {
- T_GPREGISTER,
- T_CPREGISTER,
- T_IMM8,
- T_IMM16,
- T_IMM32,
- T_OFB,
-};
-
-union arg {
- Uint32 v;
- struct {
- Uint32 o;
- int r;
- int w;
- } OfB;
-};
-
-template<class T1, class T2>
-struct mypair {
- T1 left;
- T2 right;
-};
-
-typedef mypair<int, arg> pairarg;
-
-class TDump : public TDis {
- public:
- TDump(mipsmem *);
- virtual void add_branch(Uint32);
- virtual void add_jump(Uint32);
- virtual void add_function(Uint32);
- virtual void SetTag(Uint32, int, bool);
- virtual void Name(const String &);
- virtual void PushGPReg(int);
- virtual void PushCPReg(int);
- virtual void PushImm(Uint32);
- virtual void PushTarget(Uint32);
- virtual void PushSa(Uint32);
- virtual void PushOfB(int reg, Uint32, int);
- virtual void PushOffset(Uint32);
- virtual void PushFull(Uint32);
- virtual void Invalid();
- virtual void Suspect();
- virtual void Comment(const String &);
-
- virtual void reset();
-
- String name;
- std::vector<pairarg> args;
- String comments;
-
- Uint32 tg;
-
- bool invalid, hasbr, hastg, hasfc;
-};
-
-class Dumper : public Base {
- public:
- Dumper(mipsmem *);
- void process();
- private:
- TDump * dump;
- mipsmem * mm;
-};
-
-#endif
+#ifndef __MIPSDUMP_H__
+#define __MIPSDUMP_H__
+
+#include <Exceptions.h>
+#include <mipsdis.h>
+
+enum arg_type {
+ T_GPREGISTER,
+ T_CPREGISTER,
+ T_IMM8,
+ T_IMM16,
+ T_IMM32,
+ T_OFB,
+};
+
+union arg {
+ Uint32 v;
+ struct {
+ Uint32 o;
+ int r;
+ int w;
+ } OfB;
+};
+
+template<class T1, class T2>
+struct mypair {
+ T1 left;
+ T2 right;
+};
+
+typedef mypair<int, arg> pairarg;
+
+class TDump : public TDis {
+ public:
+ TDump(mipsmem *);
+ virtual void add_branch(Uint32);
+ virtual void add_jump(Uint32);
+ virtual void add_function(Uint32);
+ virtual void SetTag(Uint32, int, bool);
+ virtual void Name(const String &);
+ virtual void PushGPReg(int);
+ virtual void PushCPReg(int);
+ virtual void PushImm(Uint32);
+ virtual void PushTarget(Uint32);
+ virtual void PushSa(Uint32);
+ virtual void PushOfB(int reg, Uint32, int);
+ virtual void PushOffset(Uint32);
+ virtual void PushFull(Uint32);
+ virtual void Invalid();
+ virtual void Suspect();
+ virtual void Comment(const String &);
+
+ virtual void reset();
+
+ String name;
+ std::vector<pairarg> args;
+ String comments;
+
+ Uint32 tg;
+
+ bool invalid, hasbr, hastg, hasfc;
+};
+
+class Dumper : public Base {
+ public:
+ Dumper(mipsmem *);
+ void process();
+ private:
+ TDump * dump;
+ mipsmem * mm;
+};
+
+#endif
diff --git a/includes/mipsmem.h b/includes/mipsmem.h
index b083b0f..f763af8 100644
--- a/includes/mipsmem.h
+++ b/includes/mipsmem.h
@@ -1,114 +1,114 @@
-#ifndef __MIPSMEM_H__
-#define __MIPSMEM_H__
-#define PSXMEM 0x200000
-
-#include <Exceptions.h>
-#include <Handle.h>
-
-enum tags_t {
- CODE,
- DATA,
- STOP,
- INVALID,
-};
-
-class memdata;
-
-class func_t : public Base {
- public:
- func_t();
- virtual ~func_t();
- Uint32 endpc;
- Uint8 stacksize;
-};
-
-class refto_t;
-class reffrom_t : public Base {
- public:
- reffrom_t(refto_t *, memdata *);
- virtual ~reffrom_t();
- memdata * getref();
- memdata * getmem();
- reffrom_t * getnext();
- private:
- refto_t * refto;
- reffrom_t * next, * prev;
- memdata * header;
-};
-
-class refto_t : public Base {
- public:
- refto_t(Uint32, memdata *);
- virtual ~refto_t();
- memdata * getref();
- memdata * getmem();
- private:
- reffrom_t * reffrom;
- memdata * mem;
-};
-
-class mipsmem;
-class memdata : public Base {
- public:
- memdata(Uint32, mipsmem *);
- virtual ~memdata();
- Uint32 getaddress();
- memdata * getmem(Uint32);
- static memdata * getmem(Uint32, mipsmem *);
- func_t * getfunc();
- refto_t * getrefto();
- reffrom_t * getreffrom();
- void setfunc(func_t *);
- void setrefto(refto_t *);
- void setreffrom(reffrom_t *);
- private:
- void checkdestroy();
- Uint32 address;
- mipsmem * mm;
- func_t * func;
- refto_t * refto;
- reffrom_t * reffrom;
-};
-
-class mipsmem : public Base {
- public:
- mipsmem();
- Uint8 Read8(Uint32 addr);
- Uint16 Read16(Uint32 addr);
- Uint32 Read32(Uint32 addr);
- void Write8(Uint32 addr, Uint8);
- void Write16(Uint32 addr, Uint16);
- void Write32(Uint32 addr, Uint32);
- void unpatch8(Uint32 addr);
- void unpatch16(Uint32 addr);
- void unpatch32(Uint32 addr);
- bool IsPatched(Uint32 addr);
- void LoadPSYQ(Handle *);
- void SavePSYQ(Handle *);
- bool GetTag(Uint32 addr, char tag);
- void SetTag(Uint32 addr, char tag, bool);
- memdata * GetDatas(Uint32 addr);
- void SetDatas(Uint32 addr, memdata * p);
- Uint32 GetPC();
- Uint32 GetLower();
- Uint32 GetUpper();
- private:
- void patch(Uint32, int);
- void unpatch(Uint32, int);
- Uint8 psyqhead[0x800];
- Uint8 plainmemory[PSXMEM];
- Uint8 patches[PSXMEM];
- Uint8 patchesmap[PSXMEM / 8];
- Uint8 tags[PSXMEM];
- memdata * datas[PSXMEM];
- Uint32 paddr, psize, startpc;
-
- struct psyq {
- Uint8 id[8];
- Uint32 text, data, pc0, gp0, t_addr, t_size;
- Uint32 d_addr, d_size, b_addr, b_size, s_addr, s_size;
- Uint32 sp, fp, gp, ra, s0;
- };
-};
-
-#endif
+#ifndef __MIPSMEM_H__
+#define __MIPSMEM_H__
+#define PSXMEM 0x200000
+
+#include <Exceptions.h>
+#include <Handle.h>
+
+enum tags_t {
+ CODE,
+ DATA,
+ STOP,
+ INVALID,
+};
+
+class memdata;
+
+class func_t : public Base {
+ public:
+ func_t();
+ virtual ~func_t();
+ Uint32 endpc;
+ Uint8 stacksize;
+};
+
+class refto_t;
+class reffrom_t : public Base {
+ public:
+ reffrom_t(refto_t *, memdata *);
+ virtual ~reffrom_t();
+ memdata * getref();
+ memdata * getmem();
+ reffrom_t * getnext();
+ private:
+ refto_t * refto;
+ reffrom_t * next, * prev;
+ memdata * header;
+};
+
+class refto_t : public Base {
+ public:
+ refto_t(Uint32, memdata *);
+ virtual ~refto_t();
+ memdata * getref();
+ memdata * getmem();
+ private:
+ reffrom_t * reffrom;
+ memdata * mem;
+};
+
+class mipsmem;
+class memdata : public Base {
+ public:
+ memdata(Uint32, mipsmem *);
+ virtual ~memdata();
+ Uint32 getaddress();
+ memdata * getmem(Uint32);
+ static memdata * getmem(Uint32, mipsmem *);
+ func_t * getfunc();
+ refto_t * getrefto();
+ reffrom_t * getreffrom();
+ void setfunc(func_t *);
+ void setrefto(refto_t *);
+ void setreffrom(reffrom_t *);
+ private:
+ void checkdestroy();
+ Uint32 address;
+ mipsmem * mm;
+ func_t * func;
+ refto_t * refto;
+ reffrom_t * reffrom;
+};
+
+class mipsmem : public Base {
+ public:
+ mipsmem();
+ Uint8 Read8(Uint32 addr);
+ Uint16 Read16(Uint32 addr);
+ Uint32 Read32(Uint32 addr);
+ void Write8(Uint32 addr, Uint8);
+ void Write16(Uint32 addr, Uint16);
+ void Write32(Uint32 addr, Uint32);
+ void unpatch8(Uint32 addr);
+ void unpatch16(Uint32 addr);
+ void unpatch32(Uint32 addr);
+ bool IsPatched(Uint32 addr);
+ void LoadPSYQ(Handle *);
+ void SavePSYQ(Handle *);
+ bool GetTag(Uint32 addr, char tag);
+ void SetTag(Uint32 addr, char tag, bool);
+ memdata * GetDatas(Uint32 addr);
+ void SetDatas(Uint32 addr, memdata * p);
+ Uint32 GetPC();
+ Uint32 GetLower();
+ Uint32 GetUpper();
+ private:
+ void patch(Uint32, int);
+ void unpatch(Uint32, int);
+ Uint8 psyqhead[0x800];
+ Uint8 plainmemory[PSXMEM];
+ Uint8 patches[PSXMEM];
+ Uint8 patchesmap[PSXMEM / 8];
+ Uint8 tags[PSXMEM];
+ memdata * datas[PSXMEM];
+ Uint32 paddr, psize, startpc;
+
+ struct psyq {
+ Uint8 id[8];
+ Uint32 text, data, pc0, gp0, t_addr, t_size;
+ Uint32 d_addr, d_size, b_addr, b_size, s_addr, s_size;
+ Uint32 sp, fp, gp, ra, s0;
+ };
+};
+
+#endif
diff --git a/includes/mipsobj.h b/includes/mipsobj.h
index 8ed68d8..18ac504 100644
--- a/includes/mipsobj.h
+++ b/includes/mipsobj.h
@@ -1,74 +1,74 @@
-#ifndef __MIPSOBJ_H__
-#define __MIPSOBJ_H__
-
-#include <map>
-#include <Exceptions.h>
-#include <Handle.h>
-
-enum mips_reloc_t {
- R_MIPS_26,
- R_MIPS_32,
- R_MIPS_HI16,
- R_MIPS_LO16,
-};
-
-enum symbol_type_t {
- LOCAL,
- GLOBAL,
- EXTERN,
-};
-
-enum section_type_t {
- TEXT,
- DATA,
- BSS,
-};
-
-struct reloc_t {
- String symbol;
- int type;
- Uint32 offset;
-};
-
-struct symbol_t {
- String name;
- String section;
- int type;
- Uint32 offset;
-};
-
-class section : public Base {
- public:
- section(const String &, int);
- section();
- virtual ~section();
- void setname(const String &);
- void settype(int);
- void putdatas(const Uint8 *, int);
- int gettype();
- int getsize();
- const Uint8 * getdatas();
- void putreloc(const String &, int, Uint32);
- void putreloc(const struct reloc_t &);
- std::vector<struct reloc_t> relocs;
- private:
- String name;
- int type;
- Uint8 * datas;
- int length;
-};
-
-class mipsobj : public Base {
- public:
- mipsobj();
- virtual ~mipsobj();
- std::map<String, section> sections;
- std::map<String, symbol_t> symbols;
- void loadELF(Handle *) throw (GeneralException);
- void loadOBJ(Handle *) throw (GeneralException);
- void loadLIB(Handle *, const String &) throw (GeneralException);
- private:
- bool loaded;
-};
-
-#endif
+#ifndef __MIPSOBJ_H__
+#define __MIPSOBJ_H__
+
+#include <map>
+#include <Exceptions.h>
+#include <Handle.h>
+
+enum mips_reloc_t {
+ R_MIPS_26,
+ R_MIPS_32,
+ R_MIPS_HI16,
+ R_MIPS_LO16,
+};
+
+enum symbol_type_t {
+ LOCAL,
+ GLOBAL,
+ EXTERN,
+};
+
+enum section_type_t {
+ TEXT,
+ DATA,
+ BSS,
+};
+
+struct reloc_t {
+ String symbol;
+ int type;
+ Uint32 offset;
+};
+
+struct symbol_t {
+ String name;
+ String section;
+ int type;
+ Uint32 offset;
+};
+
+class section : public Base {
+ public:
+ section(const String &, int);
+ section();
+ virtual ~section();
+ void setname(const String &);
+ void settype(int);
+ void putdatas(const Uint8 *, int);
+ int gettype();
+ int getsize();
+ const Uint8 * getdatas();
+ void putreloc(const String &, int, Uint32);
+ void putreloc(const struct reloc_t &);
+ std::vector<struct reloc_t> relocs;
+ private:
+ String name;
+ int type;
+ Uint8 * datas;
+ int length;
+};
+
+class mipsobj : public Base {
+ public:
+ mipsobj();
+ virtual ~mipsobj();
+ std::map<String, section> sections;
+ std::map<String, symbol_t> symbols;
+ void loadELF(Handle *) throw (GeneralException);
+ void loadOBJ(Handle *) throw (GeneralException);
+ void loadLIB(Handle *, const String &) throw (GeneralException);
+ private:
+ bool loaded;
+};
+
+#endif
diff --git a/includes/yazedc.h b/includes/yazedc.h
index 8227e87..8b8652b 100644
--- a/includes/yazedc.h
+++ b/includes/yazedc.h
@@ -1,110 +1,110 @@
-/*
- * PSX-Tools Bundle Pack
- * Copyright (C) 1998 Heiko Eissfeldt
- * portions used& Chris Smith
- * First modified by Yazoo, then by
- * Nicolas "Pixel" Noble
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-/* $Id: yazedc.h,v 1.5 2004-11-27 21:44:46 pixel Exp $ */
-
-#ifndef __YAZEDC_H__
-#define __YAZEDC_H__
-
-#include "Exceptions.h"
-
-#define RS_L12_BITS 8
-
-/* audio sector definitions for CIRC */
-#define FRAMES_PER_SECTOR 98
-/* user data bytes per frame */
-#define L1_RAW 24
-/* parity bytes with 8 bit */
-#define L1_Q 4
-#define L1_P 4
-
-/* data sector definitions for RSPC */
-/* user data bytes per frame */
-#define L2_RAW (1024*2)
-/* parity bytes for 16 bit units */
-#define L2_Q (26*2*2)
-#define L2_P (43*2*2)
-
-/* known sector types */
-#define MODE_0 0
-#define MODE_1 1
-#define MODE_2 2
-#define MODE_2_FORM_1 3
-#define MODE_2_FORM_2 4
-
-/* r-w sub channel definitions */
-#define RS_SUB_RW_BITS 6
-
-#define PACKETS_PER_SUBCHANNELFRAME 4
-#define LSUB_RAW 18
-#define LSUB_QRAW 2
-/* 6 bit */
-#define LSUB_Q 2
-#define LSUB_P 4
-
-class yazedc : public Base {
-
- public:
- yazedc();
-
-/* set one of the MODE_* constants for subsequent data sector formatting */
- int set_sector_type(int st);
-/* get the current sector type setting for data sector formatting */
- int get_sector_type(void);
-
-/* data sector layer 2 Reed-Solomon Product Code encoder */
-/* encode the given data portion depending on sector type (see
- get/set_sector_type() functions). Use the given address for the header.
- The returned data is __unscrambled__ and not in F2-frame format (for that
- see function scramble_L2()).
- Supported sector types:
- MODE_0: a 12-byte sync field, a header and 2336 zeros are returned.
- MODE_1: the user data portion (2048 bytes) has to be given
- at offset 16 in the inout array.
- Sync-, header-, edc-, spare-, p- and q- fields will be added.
- MODE_2: the user data portion (2336 bytes) has to be given
- at offset 16 in the inout array.
- Sync- and header- fields will be added.
- MODE_2_FORM_1: the user data portion (8 bytes subheader followed
- by 2048 bytes data) has to be given at offset 16
- in the inout array.
- Sync-, header-, edc-, p- and q- fields will be added.
- MODE_2_FORM_2: the user data portion (8 bytes subheader followed
- by 2324 bytes data) has to be given at offset 16
- in the inout array.
- Sync-, header- and edc- fields will be added.
-*/
- int do_encode_L2(unsigned char *inout, int sectortype, unsigned address);
-
-/* generates f2 frames from otherwise fully formatted sectors (generated by
- do_encode_L2()). */
- int scramble_L2(unsigned char *inout);
-
- unsigned char minute, second, frame;
-
- private:
- int sectortype;
- int build_address(unsigned char inout[], int sectortype, unsigned address);
-
-};
-
-#endif
+/*
+ * PSX-Tools Bundle Pack
+ * Copyright (C) 1998 Heiko Eissfeldt
+ * portions used& Chris Smith
+ * First modified by Yazoo, then by
+ * Nicolas "Pixel" Noble
+ *
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/* $Id: yazedc.h,v 1.6 2004-11-27 21:47:54 pixel Exp $ */
+
+#ifndef __YAZEDC_H__
+#define __YAZEDC_H__
+
+#include "Exceptions.h"
+
+#define RS_L12_BITS 8
+
+/* audio sector definitions for CIRC */
+#define FRAMES_PER_SECTOR 98
+/* user data bytes per frame */
+#define L1_RAW 24
+/* parity bytes with 8 bit */
+#define L1_Q 4
+#define L1_P 4
+
+/* data sector definitions for RSPC */
+/* user data bytes per frame */
+#define L2_RAW (1024*2)
+/* parity bytes for 16 bit units */
+#define L2_Q (26*2*2)
+#define L2_P (43*2*2)
+
+/* known sector types */
+#define MODE_0 0
+#define MODE_1 1
+#define MODE_2 2
+#define MODE_2_FORM_1 3
+#define MODE_2_FORM_2 4
+
+/* r-w sub channel definitions */
+#define RS_SUB_RW_BITS 6
+
+#define PACKETS_PER_SUBCHANNELFRAME 4
+#define LSUB_RAW 18
+#define LSUB_QRAW 2
+/* 6 bit */
+#define LSUB_Q 2
+#define LSUB_P 4
+
+class yazedc : public Base {
+
+ public:
+ yazedc();
+
+/* set one of the MODE_* constants for subsequent data sector formatting */
+ int set_sector_type(int st);
+/* get the current sector type setting for data sector formatting */
+ int get_sector_type(void);
+
+/* data sector layer 2 Reed-Solomon Product Code encoder */
+/* encode the given data portion depending on sector type (see
+ get/set_sector_type() functions). Use the given address for the header.
+ The returned data is __unscrambled__ and not in F2-frame format (for that
+ see function scramble_L2()).
+ Supported sector types:
+ MODE_0: a 12-byte sync field, a header and 2336 zeros are returned.
+ MODE_1: the user data portion (2048 bytes) has to be given
+ at offset 16 in the inout array.
+ Sync-, header-, edc-, spare-, p- and q- fields will be added.
+ MODE_2: the user data portion (2336 bytes) has to be given
+ at offset 16 in the inout array.
+ Sync- and header- fields will be added.
+ MODE_2_FORM_1: the user data portion (8 bytes subheader followed
+ by 2048 bytes data) has to be given at offset 16
+ in the inout array.
+ Sync-, header-, edc-, p- and q- fields will be added.
+ MODE_2_FORM_2: the user data portion (8 bytes subheader followed
+ by 2324 bytes data) has to be given at offset 16
+ in the inout array.
+ Sync-, header- and edc- fields will be added.
+*/
+ int do_encode_L2(unsigned char *inout, int sectortype, unsigned address);
+
+/* generates f2 frames from otherwise fully formatted sectors (generated by
+ do_encode_L2()). */
+ int scramble_L2(unsigned char *inout);
+
+ unsigned char minute, second, frame;
+
+ private:
+ int sectortype;
+ int build_address(unsigned char inout[], int sectortype, unsigned address);
+
+};
+
+#endif