2007-05-30 21:56:52 +00:00
|
|
|
/* ScummVM - Graphic Adventure Engine
|
|
|
|
*
|
|
|
|
* ScummVM is the legal property of its developers, whose names
|
|
|
|
* are too numerous to list here. Please refer to the COPYRIGHT
|
|
|
|
* file distributed with this source distribution.
|
2006-07-09 11:47:17 +00:00
|
|
|
*
|
|
|
|
* 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.
|
2014-02-18 02:34:19 +01:00
|
|
|
*
|
2006-07-09 11:47:17 +00:00
|
|
|
* 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.
|
2014-02-18 02:34:19 +01:00
|
|
|
*
|
2006-07-09 11:47:17 +00:00
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
* along with this program; if not, write to the Free Software
|
2010-07-05 16:11:11 +00:00
|
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
*
|
2006-07-09 11:47:17 +00:00
|
|
|
*/
|
2009-01-01 15:06:43 +00:00
|
|
|
|
2006-07-09 11:47:17 +00:00
|
|
|
#ifndef _DSMAIN_H
|
|
|
|
#define _DSMAIN_H
|
|
|
|
|
2017-11-14 23:00:56 +00:00
|
|
|
#define FORBIDDEN_SYMBOL_ALLOW_ALL
|
|
|
|
|
2006-07-09 11:47:17 +00:00
|
|
|
#include <nds.h>
|
2006-10-25 19:18:38 +00:00
|
|
|
#include "osystem_ds.h"
|
2006-07-09 11:47:17 +00:00
|
|
|
|
|
|
|
namespace DS {
|
|
|
|
|
|
|
|
// Video
|
2008-05-15 22:12:51 +00:00
|
|
|
void displayMode8Bit(); // Switch to 8-bit mode5
|
|
|
|
void displayMode16Bit(); // Switch to 16-bit mode5
|
2006-07-09 11:47:17 +00:00
|
|
|
|
|
|
|
// Get address of current back buffer
|
2010-07-05 16:10:22 +00:00
|
|
|
u16 * get16BitBackBuffer();
|
2006-07-09 11:47:17 +00:00
|
|
|
|
2008-05-15 22:12:51 +00:00
|
|
|
void setTalkPos(int x, int y);
|
|
|
|
void setTopScreenTarget(int x, int y);
|
2008-09-15 22:43:20 +00:00
|
|
|
void setTopScreenZoom(int percentage);
|
2006-07-09 11:47:17 +00:00
|
|
|
|
2020-08-06 15:04:24 +01:00
|
|
|
// Events
|
2008-05-15 22:12:51 +00:00
|
|
|
void VBlankHandler();
|
2020-08-09 22:54:32 +01:00
|
|
|
Common::Point transformPoint(uint16 x, uint16 y, bool isOverlayShown);
|
2020-08-11 17:37:26 +01:00
|
|
|
Common::Point warpMouse(int penX, int penY, bool isOverlayShown);
|
2006-07-09 11:47:17 +00:00
|
|
|
|
|
|
|
// Shake
|
2019-11-15 01:38:21 -08:00
|
|
|
void setShakePos(int shakeXOffset, int shakeYOffset);
|
2006-07-09 11:47:17 +00:00
|
|
|
|
|
|
|
// Options
|
2020-08-06 15:04:24 +01:00
|
|
|
void setGameScreenSwap(bool enable);
|
2006-10-05 22:44:11 +00:00
|
|
|
|
2006-07-09 11:47:17 +00:00
|
|
|
// Display
|
2008-05-15 22:12:51 +00:00
|
|
|
bool getIsDisplayMode8Bit();
|
|
|
|
void setGameSize(int width, int height);
|
2006-07-09 11:47:17 +00:00
|
|
|
int getGameWidth();
|
|
|
|
int getGameHeight();
|
2020-08-11 22:28:25 +01:00
|
|
|
void initHardware();
|
2006-07-09 11:47:17 +00:00
|
|
|
|
2007-04-06 18:34:53 +00:00
|
|
|
// Fast RAM allocation (ITCM)
|
|
|
|
void fastRamReset();
|
|
|
|
void* fastRamAlloc(int size);
|
|
|
|
|
2007-06-30 23:03:03 +00:00
|
|
|
|
2013-01-26 19:33:27 +01:00
|
|
|
} // End of namespace DS
|
2010-07-05 16:11:11 +00:00
|
|
|
|
2006-07-09 11:47:17 +00:00
|
|
|
|
|
|
|
|
2007-06-30 23:03:03 +00:00
|
|
|
int cygprofile_getHBlanks();
|
|
|
|
|
2006-07-09 11:47:17 +00:00
|
|
|
#endif
|