Skip to content
Permalink
Browse files

first 3ds commit

  • Loading branch information...
shutterbug2000 authored and Garcia98 committed Aug 15, 2016
1 parent 5ff6f8d commit 55dac2fef4e8e6d7ddaf9d70a182bac036992249
Showing with 42 additions and 22 deletions.
  1. +17 −1 Makefile.libretro
  2. +1 −1 libretro/mixer-retro.cpp
  3. +14 −13 src/dos/cdrom_image.cpp
  4. +1 −1 src/gui/midi.cpp
  5. +7 −4 src/ints/bios.cpp
  6. +2 −2 src/misc/cross.cpp
@@ -122,13 +122,29 @@ else ifeq ($(platform), wii)
AR = $(DEVKITPPC)/bin/powerpc-eabi-ar$(EXE_EXT)
COMMONFLAGS += -DGEKKO -mrvl -mcpu=750 -meabi -mhard-float -D__POWERPC__ -D__ppc__ -DWORDS_BIGENDIAN=1
STATIC_LINKING = 1
else ifeq ($(platform), ctr)
TARGET := libretro_ctr.a
CC = $(DEVKITARM)/bin/arm-none-eabi-gcc$(EXE_EXT)
CXX = $(DEVKITARM)/bin/arm-none-eabi-g++$(EXE_EXT)
AR = $(DEVKITARM)/bin/arm-none-eabi-ar$(EXE_EXT)
ENDIANNESS_DEFINES := -DLSB_FIRST
COMMONFLAGS += -DARM11 -D_3DS -Os -s
COMMONFLAGS += -DHAVE_MKDIR
COMMONFLAGS += -march=armv6k -mtune=mpcore -mfloat-abi=hard
COMMONFLAGS += -mword-relocations
COMMONFLAGS += -fomit-frame-pointer -fstrict-aliasing -ffast-math
COMMONFLAGS += -DDISABLE_EXCEPTIONS
STATIC_LINKING = 1
IS_X86 := 0
NEED_BPP := 16
else
CXXFLAGS += -mno-ms-bitfields
TARGET := $(TARGET_NAME)_libretro.dll
LDFLAGS += -shared -static-libgcc -static-libstdc++ -Wl,--version-script=libretro/link.T -lwinmm
endif

ifeq ($(DEBUG), 1)
ifeq ($(platform), ctr)
else ifeq ($(DEBUG), 1)
COMMONFLAGS += -O0 -g
else
COMMONFLAGS += -O3 -DNDEBUG -DGIT_VERSION=\"$(GIT_VERSION)\"
@@ -607,7 +607,7 @@ class MIXER : public Program {
if (!db)
val/=100;
else
val=powf(10.0f,(float)val/20.0f);
// val=powf(10.0f,(float)val/20.0f);
if (val<0)
val=1.0f;
if (!w)
@@ -183,29 +183,29 @@ bool CDROM_Interface_Image::GetUPC(unsigned char& attr, char* upc)

bool CDROM_Interface_Image::GetAudioTracks(int& stTrack, int& end, TMSF& leadOut)
{
stTrack = 1;
/* stTrack = 1;
end = (int)(tracks.size() - 1);
FRAMES_TO_MSF(tracks[tracks.size() - 1].start + 150, &leadOut.min, &leadOut.sec, &leadOut.fr);
FRAMES_TO_MSF(tracks[tracks.size() - 1].start + 150, &leadOut.min, &leadOut.sec, &leadOut.fr); */
return true;
}

bool CDROM_Interface_Image::GetAudioTrackInfo(int track, TMSF& start, unsigned char& attr)
{
if (track < 1 || track > (int)tracks.size()) return false;
/* if (track < 1 || track > (int)tracks.size()) return false;
FRAMES_TO_MSF(tracks[track - 1].start + 150, &start.min, &start.sec, &start.fr);
attr = tracks[track - 1].attr;
attr = tracks[track - 1].attr; */
return true;
}

bool CDROM_Interface_Image::GetAudioSub(unsigned char& attr, unsigned char& track, unsigned char& index, TMSF& relPos, TMSF& absPos)
{
int cur_track = GetTrack(player.currFrame);
/* int cur_track = GetTrack(player.currFrame);
if (cur_track < 1) return false;
track = (unsigned char)cur_track;
attr = tracks[track - 1].attr;
index = 1;
FRAMES_TO_MSF(player.currFrame + 150, &absPos.min, &absPos.sec, &absPos.fr);
FRAMES_TO_MSF(player.currFrame - tracks[track - 1].start + 150, &relPos.min, &relPos.sec, &relPos.fr);
FRAMES_TO_MSF(player.currFrame - tracks[track - 1].start + 150, &relPos.min, &relPos.sec, &relPos.fr); */
return true;
}

@@ -416,8 +416,9 @@ bool CDROM_Interface_Image::CanReadPVD(TrackFile *file, int sectorSize, bool mod
if (sectorSize == RAW_SECTOR_SIZE && !mode2) seek += 16;
if (mode2) seek += 24;
file->read(pvd, seek, COOKED_SECTOR_SIZE);
// pvd[0] = descriptor type, pvd[1..5] = standard identifier, pvd[6] = iso version
return (pvd[0] == 1 && !strncmp((char*)(&pvd[1]), "CD001", 5) && pvd[6] == 1);
// pvd[0] = descriptor type, pvd[1..5] = standard identifier, pvd[6] = iso version (+8 for High Sierra)
return ((pvd[0] == 1 && !strncmp((char*)(&pvd[1]), "CD001", 5) && pvd[6] == 1) ||
(pvd[8] == 1 && !strncmp((char*)(&pvd[9]), "CDROM", 5) && pvd[14] == 1));
}

#if defined(WIN32) || (defined(__LIBRETRO__) && defined(GEKKO)) // __LIBRETRO__: No dirname on wii
@@ -449,7 +450,7 @@ bool CDROM_Interface_Image::LoadCueSheet(char *cuefile)
bool canAddTrack = false;
char tmp[MAX_FILENAME_LENGTH]; // dirname can change its argument
safe_strncpy(tmp, cuefile, MAX_FILENAME_LENGTH);
string pathname(dirname(tmp));
//string pathname(dirname(tmp));
ifstream in;
in.open(cuefile, ios::in);
if (in.fail()) return false;
@@ -518,7 +519,7 @@ bool CDROM_Interface_Image::LoadCueSheet(char *cuefile)

string filename;
GetCueString(filename, line);
GetRealFileName(filename, pathname);
//GetRealFileName(filename, pathname);
string type;
GetCueKeyword(type, line);

@@ -696,13 +697,13 @@ bool CDROM_Interface_Image::GetCueKeyword(string &keyword, istream &in)

bool CDROM_Interface_Image::GetCueFrame(int &frames, istream &in)
{
string msf;
/* string msf;
in >> msf;
int min, sec, fr;
bool success = sscanf(msf.c_str(), "%d:%d:%d", &min, &sec, &fr) == 3;
frames = MSF_TO_FRAMES(min, sec, fr);
frames = MSF_TO_FRAMES(min, sec, fr); */

return success;
return true;
}

bool CDROM_Interface_Image::GetCueString(string &str, istream &in)
@@ -102,7 +102,7 @@ DB_Midi midi;
void MIDI_RawOutByte(Bit8u data) {
if (midi.sysex.start) {
Bit32u passed_ticks = GetTicks() - midi.sysex.start;
if (passed_ticks < midi.sysex.delay) SDL_Delay(midi.sysex.delay - passed_ticks);
// if (passed_ticks < midi.sysex.delay) SDL_Delay(midi.sysex.delay - passed_ticks);
}

/* Test for a realtime MIDI message */
@@ -508,11 +508,14 @@ void FAKEftime(struct FAKEtimeb* tb)

static void BIOS_HostTimeSync() {
/* Setup time and date */
struct timeb timebuffer;
ftime(&timebuffer);
time_t timebuffer;
//ftime(&timebuffer);

time(&timebuffer);

struct tm *loctime;
loctime = localtime (&timebuffer.time);
loctime = localtime (&timebuffer);
// milli = 1000 * timebuffer;

/*
loctime->tm_hour = 23;
@@ -531,7 +534,7 @@ static void BIOS_HostTimeSync() {
loctime->tm_hour*3600*1000+
loctime->tm_min*60*1000+
loctime->tm_sec*1000+
timebuffer.millitm))*(((double)PIT_TICK_RATE/65536.0)/1000.0));
timebuffer * 1000))*(((double)PIT_TICK_RATE/65536.0)/1000.0));
mem_writed(BIOS_TIMER,ticks);
}

@@ -119,8 +119,8 @@ void Cross::ResolveHomedir(std::string & temp_line) {
std::string::size_type namelen = temp_line.find(CROSS_FILESPLIT);
if(namelen == std::string::npos) namelen = temp_line.size();
std::string username = temp_line.substr(1,namelen - 1);
struct passwd* pass = getpwnam(username.c_str());
if(pass) temp_line.replace(0,namelen,pass->pw_dir); //namelen -1 +1(for the ~)
// struct passwd* pass = getpwnam(username.c_str());
// if(pass) temp_line.replace(0,namelen,pass->pw_dir); //namelen -1 +1(for the ~)
#endif // USERNAME lookup code
}
}

0 comments on commit 55dac2f

Please sign in to comment.
You can’t perform that action at this time.