Added SDL2 Test Folder
This commit is contained in:
parent
0aa4b49022
commit
f98f446866
5
SDL2/sdl2.inc
Normal file
5
SDL2/sdl2.inc
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
#include <SDL.h>
|
||||||
|
#include <SDL_image.h>
|
||||||
|
#include <SDL_mixer.h>
|
||||||
|
#include <SDL_ttf.h>
|
||||||
|
|
45
SDL2/simplewindow.cpp
Normal file
45
SDL2/simplewindow.cpp
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
#include "../jade.h"
|
||||||
|
#include "sdl2.inc"
|
||||||
|
|
||||||
|
// SCREEN DIMENSIONS
|
||||||
|
CONSTANT INT SCREEN_WIDTH = 640;
|
||||||
|
CONSTANT INT SCREEN_HEIGHT = 480;
|
||||||
|
|
||||||
|
MAIN
|
||||||
|
DIM AS SDL_Window* window = NULL;
|
||||||
|
DIM AS SDL_Surface* screenSurface = NULL;
|
||||||
|
|
||||||
|
IF ( SDL_Init( SDL_INIT_VIDEO ) < 0 ) THEN
|
||||||
|
PRINT( SDL_GetError() );
|
||||||
|
ELSE
|
||||||
|
//Create Window
|
||||||
|
window = SDL_CreateWindow( "SDL Simple Window",
|
||||||
|
SDL_WINDOWPOS_UNDEFINED,
|
||||||
|
SDL_WINDOWPOS_UNDEFINED,
|
||||||
|
SCREEN_WIDTH,
|
||||||
|
SCREEN_HEIGHT,
|
||||||
|
SDL_WINDOW_SHOWN);
|
||||||
|
|
||||||
|
IF ( window == NULL ) THEN
|
||||||
|
PRINT( SDL_GetError() );
|
||||||
|
ELSE
|
||||||
|
// Get Window Surface
|
||||||
|
screenSurface = SDL_GetWindowSurface( window );
|
||||||
|
// Fill the surface with White
|
||||||
|
SDL_FillRect( screenSurface, NULL, SDL_MapRGB( screenSurface->format, 255, 255, 255 ) );
|
||||||
|
// Update the Surface
|
||||||
|
SDL_UpdateWindowSurface( window );
|
||||||
|
// Wait 5 seconds
|
||||||
|
SDL_Delay( 5000 );
|
||||||
|
ENDIF
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
//Destroy Window
|
||||||
|
SDL_DestroyWindow( window );
|
||||||
|
|
||||||
|
// Shutdown SDL
|
||||||
|
SDL_Quit();
|
||||||
|
|
||||||
|
RETURN 0;
|
||||||
|
|
||||||
|
END
|
97
cppbas.inc
97
cppbas.inc
@ -1,97 +0,0 @@
|
|||||||
#include <stdbool.h>
|
|
||||||
#include <ctype.h>
|
|
||||||
#include <math.h>
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <iostream>
|
|
||||||
#include <fstream>
|
|
||||||
#include <string.h>
|
|
||||||
#include <stddef.h>
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <setjmp.h>
|
|
||||||
#include <time.h>
|
|
||||||
#include <stdarg.h>
|
|
||||||
#include <dirent.h>
|
|
||||||
#include <sys/types.h>
|
|
||||||
#include <sys/stat.h>
|
|
||||||
#ifndef _WIN32
|
|
||||||
#include <sys/wait.h>
|
|
||||||
#include <dlfcn.h>
|
|
||||||
#endif
|
|
||||||
#include <unistd.h>
|
|
||||||
#include <iostream>
|
|
||||||
#include <fstream>
|
|
||||||
#include <sstream>
|
|
||||||
#include <vector>
|
|
||||||
#include <map>
|
|
||||||
#include <algorithm>
|
|
||||||
|
|
||||||
/* DEFINES */
|
|
||||||
#define MAIN int main (int argc, char** argv) {
|
|
||||||
#define ENDMAIN }
|
|
||||||
#define DECLARE
|
|
||||||
#define FUNCTION
|
|
||||||
#define ENDFUNCTION }
|
|
||||||
#define DIM
|
|
||||||
#define AS
|
|
||||||
#define SUB void
|
|
||||||
#define ENDSUB }
|
|
||||||
#define BEGIN {
|
|
||||||
#define END }
|
|
||||||
#define AND &&
|
|
||||||
#define OR ||
|
|
||||||
#define CLASS class
|
|
||||||
#define TYPE typedef struct
|
|
||||||
#define ADDR &
|
|
||||||
#define INCR ++
|
|
||||||
#define DECR --
|
|
||||||
#define NEXT ++
|
|
||||||
#define PRIOR --
|
|
||||||
#define BYREF *
|
|
||||||
#define NOT not
|
|
||||||
#define IF if
|
|
||||||
#define THEN {
|
|
||||||
#define ELSE } else {
|
|
||||||
#define ENDIF }
|
|
||||||
#define FOR for
|
|
||||||
#define TO ;
|
|
||||||
#define STEP ;
|
|
||||||
#define SELECT switch
|
|
||||||
#define CASE case
|
|
||||||
#define _TO_ ...
|
|
||||||
#define ENDCASE break;
|
|
||||||
#define CASE_ELSE default
|
|
||||||
#define ENDSELECT }
|
|
||||||
#define WHILE while
|
|
||||||
#define WEND }
|
|
||||||
#define RETURN return
|
|
||||||
#define CONSTANT const
|
|
||||||
#define STR$( x ) dynamic_cast< std::ostringstream & >( ( std::ostringstream() << std::dec << x ) ).str()
|
|
||||||
#define BOOL bool
|
|
||||||
#define INT int
|
|
||||||
#define UINT unsigned int
|
|
||||||
#define VECTOR std::vector
|
|
||||||
#define MAP std::map
|
|
||||||
#define CHAR char
|
|
||||||
#define ENUM enum {
|
|
||||||
#define ENDENUM };
|
|
||||||
#define EXIT exit
|
|
||||||
#define BREAK break;
|
|
||||||
#define SHORT short
|
|
||||||
#define LPCHAR char*
|
|
||||||
|
|
||||||
#ifndef TRUE
|
|
||||||
#define TRUE 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef FALSE
|
|
||||||
#define FALSE 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* TYPEDEFS */
|
|
||||||
typedef std::string CSTRING;
|
|
||||||
|
|
||||||
|
|
||||||
char LF [2]= {10,0}; // Line Feed
|
|
||||||
|
|
||||||
#include "cppbasrt.inc"
|
|
||||||
|
|
204
cppbasrt.inc
204
cppbasrt.inc
@ -1,204 +0,0 @@
|
|||||||
DECLARE FUNCTION CSTRING LTRIM$ (CSTRING);
|
|
||||||
DECLARE FUNCTION CSTRING RTRIM$ (CSTRING);
|
|
||||||
DECLARE FUNCTION CSTRING TRIM$ (CSTRING);
|
|
||||||
DECLARE FUNCTION CSTRING LEFT$ (CSTRING, INT);
|
|
||||||
DECLARE FUNCTION CSTRING MID$ (CSTRING, INT, INT);
|
|
||||||
DECLARE FUNCTION CSTRING RIGHT$ (CSTRING, INT);
|
|
||||||
DECLARE FUNCTION INT INSTR (CSTRING,CSTRING,size_t=0);
|
|
||||||
DECLARE FUNCTION CSTRING LCASE$ (CSTRING);
|
|
||||||
DECLARE FUNCTION CSTRING UCASE$ (CSTRING);
|
|
||||||
DECLARE FUNCTION CSTRING MCASE$ (CSTRING);
|
|
||||||
DECLARE FUNCTION CSTRING LOADFILE$ (CSTRING);
|
|
||||||
DECLARE FUNCTION CSTRING SPLITPATH$ (CSTRING, INT);
|
|
||||||
DECLARE FUNCTION CSTRING ENC$ (CSTRING,INT=34,INT=34);
|
|
||||||
DECLARE FUNCTION CSTRING REVERSE$ (CSTRING);
|
|
||||||
DECLARE FUNCTION CSTRING REPLACE$ (CSTRING subject, CONSTANT CSTRING& search, CONSTANT CSTRING& replace);
|
|
||||||
DECLARE FUNCTION INT VAL (CSTRING);
|
|
||||||
DECLARE SUB PRINT (CSTRING);
|
|
||||||
DECLARE SUB SAVEFILE(CSTRING src, CSTRING fname);
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION CSTRING REVERSE$ (CSTRING src) BEGIN
|
|
||||||
RETURN CSTRING( src.rbegin(),src.rend() );
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
SUB PRINT (CSTRING A="") BEGIN
|
|
||||||
IF (A.empty()) THEN
|
|
||||||
std::cout << std::endl;
|
|
||||||
ELSE
|
|
||||||
std::cout << A << std::endl;
|
|
||||||
ENDIF
|
|
||||||
ENDSUB
|
|
||||||
|
|
||||||
FUNCTION CSTRING LTRIM$ (CSTRING s) BEGIN
|
|
||||||
s.erase(s.begin(),std::find_if(s.begin(),s.end(),std::not1(std::ptr_fun<INT,INT>(std::isspace))));
|
|
||||||
RETURN s;
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION CSTRING RTRIM$ (CSTRING s) BEGIN
|
|
||||||
s.erase(std::find_if(s.rbegin(),s.rend(),std::not1(std::ptr_fun<INT,INT>(std::isspace))).base(),s.end());
|
|
||||||
RETURN s;
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION CSTRING TRIM$ (CSTRING s) BEGIN
|
|
||||||
RETURN LTRIM$ (RTRIM$ (s));
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION CSTRING LEFT$ (CSTRING s, INT length) BEGIN
|
|
||||||
RETURN s.substr(0,length);
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION CSTRING MID$ (CSTRING s, INT start, INT length) BEGIN
|
|
||||||
RETURN s.substr(start,length);
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION CSTRING RIGHT$ (CSTRING s, INT length) BEGIN
|
|
||||||
RETURN s.substr(s.size()-length);
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION INT INSTR (CSTRING s,CSTRING match, size_t offset) BEGIN
|
|
||||||
IF (s.empty() OR match.empty() OR offset>s.length()) THEN
|
|
||||||
RETURN 0;
|
|
||||||
ENDIF
|
|
||||||
RETURN s.find(match,offset);
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION CSTRING LCASE$ (CSTRING str) BEGIN
|
|
||||||
DIM AS CSTRING name(str);
|
|
||||||
std::transform(name.begin(),name.end(),name.begin(),::tolower);
|
|
||||||
RETURN name;
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION CSTRING UCASE$ (CSTRING str) BEGIN
|
|
||||||
DIM AS CSTRING name(str);
|
|
||||||
std::transform(name.begin(),name.end(),name.begin(),::toupper);
|
|
||||||
RETURN name;
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION CSTRING MCASE$ (CSTRING S) BEGIN
|
|
||||||
DIM AS CSTRING tmpStr(S);
|
|
||||||
DIM AS bool capFlag;
|
|
||||||
DIM AS register size_t i;
|
|
||||||
|
|
||||||
|
|
||||||
std::transform(tmpStr.begin(),tmpStr.end(),tmpStr.begin(),::tolower);
|
|
||||||
|
|
||||||
FOR (i=0 TO i<=tmpStr.length() STEP i++) BEGIN
|
|
||||||
IF (std::ispunct(tmpStr[i]) OR std::isspace(tmpStr[i])) THEN
|
|
||||||
capFlag=FALSE;
|
|
||||||
ENDIF
|
|
||||||
|
|
||||||
IF (capFlag==FALSE AND std::isalpha(tmpStr[i])) THEN
|
|
||||||
tmpStr[i]=std::toupper(tmpStr[i]);
|
|
||||||
capFlag=TRUE;
|
|
||||||
ENDIF
|
|
||||||
END
|
|
||||||
RETURN tmpStr;
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION CSTRING LOADFILE$ (CSTRING N) BEGIN
|
|
||||||
DIM AS CSTRING line, tmpStr;
|
|
||||||
DIM AS std::ifstream myFile(N.c_str());
|
|
||||||
|
|
||||||
IF( NOT myFile.good()) BEGIN
|
|
||||||
PRINT("Error opening file");
|
|
||||||
RETURN "ERROR";
|
|
||||||
ENDIF
|
|
||||||
|
|
||||||
WHILE ( NOT myFile.eof()) BEGIN
|
|
||||||
getline(myFile,line);
|
|
||||||
line+=LF;
|
|
||||||
tmpStr+=line;
|
|
||||||
WEND
|
|
||||||
|
|
||||||
myFile.close();
|
|
||||||
|
|
||||||
RETURN tmpStr;
|
|
||||||
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
SUB SAVEFILE (CSTRING src, CSTRING fname) BEGIN
|
|
||||||
DIM AS std::ofstream outfile;
|
|
||||||
|
|
||||||
outfile.open(fname.c_str());
|
|
||||||
outfile << src;
|
|
||||||
outfile.close();
|
|
||||||
|
|
||||||
ENDSUB
|
|
||||||
|
|
||||||
FUNCTION CSTRING SPLITPATH$ (CSTRING FPATH, INT mask) BEGIN
|
|
||||||
DIM AS CSTRING fullPath(FPATH);
|
|
||||||
DIM AS CSTRING path, filename, extension;
|
|
||||||
DIM AS CSTRING::size_type lastSlashPos, extPos;
|
|
||||||
|
|
||||||
lastSlashPos=fullPath.find_last_of("/");
|
|
||||||
extPos=fullPath.find_last_of(".");
|
|
||||||
IF (lastSlashPos==CSTRING::npos) THEN
|
|
||||||
path.empty();
|
|
||||||
filename=fullPath;
|
|
||||||
ELSE
|
|
||||||
path=fullPath.substr(0,lastSlashPos);
|
|
||||||
filename=fullPath.substr(lastSlashPos+1,(extPos-lastSlashPos)-1);
|
|
||||||
ENDIF
|
|
||||||
|
|
||||||
IF (extPos==CSTRING::npos) THEN
|
|
||||||
extension.empty();
|
|
||||||
ELSE
|
|
||||||
extension=fullPath.substr(extPos+1,fullPath.size()-extPos-1);
|
|
||||||
ENDIF
|
|
||||||
|
|
||||||
SELECT (mask) BEGIN
|
|
||||||
CASE 4:
|
|
||||||
RETURN path;
|
|
||||||
ENDCASE
|
|
||||||
|
|
||||||
CASE 8:
|
|
||||||
RETURN filename;
|
|
||||||
ENDCASE
|
|
||||||
|
|
||||||
CASE 12:
|
|
||||||
RETURN path.append("/").append(filename);
|
|
||||||
ENDCASE
|
|
||||||
|
|
||||||
CASE 16:
|
|
||||||
RETURN extension;
|
|
||||||
ENDCASE
|
|
||||||
|
|
||||||
CASE_ELSE:
|
|
||||||
RETURN "";
|
|
||||||
|
|
||||||
ENDSELECT
|
|
||||||
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION CSTRING ENC$ (CSTRING A, INT L, INT R) BEGIN
|
|
||||||
DIM AS std::stringstream buf;
|
|
||||||
buf<<(char)L<<A<<(char)R;
|
|
||||||
RETURN buf.str();
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
FUNCTION CSTRING REPLACE$ (CSTRING subject, CONSTANT CSTRING& search, CONSTANT CSTRING& replace) BEGIN
|
|
||||||
DIM AS size_t pos = 0;
|
|
||||||
|
|
||||||
|
|
||||||
WHILE( ( pos = subject.find(search, pos) ) != CSTRING::npos) BEGIN
|
|
||||||
subject.replace(pos, search.length(), replace);
|
|
||||||
pos += replace.length();
|
|
||||||
END
|
|
||||||
RETURN subject;
|
|
||||||
ENDFUNCTION
|
|
||||||
|
|
||||||
FUNCTION INT VAL (CSTRING str) BEGIN
|
|
||||||
RETURN atoi(str.c_str());
|
|
||||||
ENDFUNCTION
|
|
BIN
sdl_test/test
BIN
sdl_test/test
Binary file not shown.
Loading…
Reference in New Issue
Block a user