mirror of
https://github.com/leffuy/babycthulu.git
synced 2025-06-18 08:55:40 -04:00
Added good self contained project.
This commit is contained in:
parent
9541e5f959
commit
61a88acd6f
41
tests/thulutemplate/Makefile
Normal file
41
tests/thulutemplate/Makefile
Normal file
@ -0,0 +1,41 @@
|
||||
#---------------------------------------------------------------------------------
|
||||
.SUFFIXES:
|
||||
#---------------------------------------------------------------------------------
|
||||
ifeq ($(strip $(DEVKITARM)),)
|
||||
$(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitARM")
|
||||
endif
|
||||
|
||||
include $(DEVKITARM)/ds_rules
|
||||
|
||||
export TARGET := $(shell basename $(CURDIR))
|
||||
export TOPDIR := $(CURDIR)
|
||||
|
||||
|
||||
.PHONY: $(TARGET).arm7 $(TARGET).arm9
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# main targets
|
||||
#---------------------------------------------------------------------------------
|
||||
all: $(TARGET).nds
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
$(TARGET).nds : $(TARGET).arm7 $(TARGET).arm9
|
||||
ndstool -c $(TARGET).nds -7 $(TARGET).arm7 -9 $(TARGET).arm9
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
$(TARGET).arm7 : arm7/$(TARGET).elf
|
||||
$(TARGET).arm9 : arm9/$(TARGET).elf
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
arm7/$(TARGET).elf:
|
||||
$(MAKE) -C arm7
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
arm9/$(TARGET).elf:
|
||||
$(MAKE) -C arm9
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
clean:
|
||||
$(MAKE) -C arm9 clean
|
||||
$(MAKE) -C arm7 clean
|
||||
rm -f $(TARGET).nds $(TARGET).arm7 $(TARGET).arm9
|
132
tests/thulutemplate/arm7/Makefile
Normal file
132
tests/thulutemplate/arm7/Makefile
Normal file
@ -0,0 +1,132 @@
|
||||
#---------------------------------------------------------------------------------
|
||||
.SUFFIXES:
|
||||
#---------------------------------------------------------------------------------
|
||||
ifeq ($(strip $(DEVKITARM)),)
|
||||
$(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitARM")
|
||||
endif
|
||||
|
||||
include $(DEVKITARM)/ds_rules
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# BUILD is the directory where object files & intermediate files will be placed
|
||||
# SOURCES is a list of directories containing source code
|
||||
# INCLUDES is a list of directories containing extra header files
|
||||
# DATA is a list of directories containing binary files
|
||||
# all directories are relative to this makefile
|
||||
#---------------------------------------------------------------------------------
|
||||
BUILD := build
|
||||
SOURCES := source
|
||||
INCLUDES := include build
|
||||
DATA :=
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# options for code generation
|
||||
#---------------------------------------------------------------------------------
|
||||
ARCH := -mthumb-interwork
|
||||
|
||||
CFLAGS := -g -Wall -O2\
|
||||
-mcpu=arm7tdmi -mtune=arm7tdmi -fomit-frame-pointer\
|
||||
-ffast-math \
|
||||
$(ARCH)
|
||||
|
||||
CFLAGS += $(INCLUDE) -DARM7
|
||||
CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions -fno-rtti
|
||||
|
||||
|
||||
ASFLAGS := -g $(ARCH)
|
||||
LDFLAGS = -specs=ds_arm7.specs -g $(ARCH) -Wl,-Map,$(notdir $*).map
|
||||
|
||||
LIBS := -ldswifi7 -lmm7 -lnds7
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# list of directories containing libraries, this must be the top level containing
|
||||
# include and lib
|
||||
#---------------------------------------------------------------------------------
|
||||
LIBDIRS := $(LIBNDS)
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# no real need to edit anything past this point unless you need to add additional
|
||||
# rules for different file extensions
|
||||
#---------------------------------------------------------------------------------
|
||||
ifneq ($(BUILD),$(notdir $(CURDIR)))
|
||||
#---------------------------------------------------------------------------------
|
||||
|
||||
export ARM7BIN := $(TOPDIR)/$(TARGET).arm7
|
||||
export ARM7ELF := $(CURDIR)/$(TARGET).arm7.elf
|
||||
export DEPSDIR := $(CURDIR)/$(BUILD)
|
||||
|
||||
export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir))
|
||||
|
||||
CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
|
||||
CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
|
||||
SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
|
||||
BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
|
||||
|
||||
export OFILES := $(addsuffix .o,$(BINFILES)) \
|
||||
$(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)
|
||||
|
||||
export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
|
||||
$(foreach dir,$(LIBDIRS),-I$(dir)/include) \
|
||||
-I$(CURDIR)/$(BUILD)
|
||||
|
||||
export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# use CXX for linking C++ projects, CC for standard C
|
||||
#---------------------------------------------------------------------------------
|
||||
ifeq ($(strip $(CPPFILES)),)
|
||||
#---------------------------------------------------------------------------------
|
||||
export LD := $(CC)
|
||||
#---------------------------------------------------------------------------------
|
||||
else
|
||||
#---------------------------------------------------------------------------------
|
||||
export LD := $(CXX)
|
||||
#---------------------------------------------------------------------------------
|
||||
endif
|
||||
#---------------------------------------------------------------------------------
|
||||
|
||||
.PHONY: $(BUILD) clean
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
$(BUILD):
|
||||
@[ -d $@ ] || mkdir -p $@
|
||||
@make --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
clean:
|
||||
@echo clean ...
|
||||
@rm -fr $(BUILD) *.elf
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
else
|
||||
|
||||
DEPENDS := $(OFILES:.o=.d)
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# main targets
|
||||
#---------------------------------------------------------------------------------
|
||||
$(ARM7BIN) : $(ARM7ELF)
|
||||
@$(OBJCOPY) -O binary $< $@
|
||||
@echo built ... $(notdir $@)
|
||||
|
||||
|
||||
$(ARM7ELF) : $(OFILES)
|
||||
@echo linking $(notdir $@)
|
||||
@$(LD) $(LDFLAGS) $(OFILES) $(LIBPATHS) $(LIBS) -o $@
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# you need a rule like this for each extension you use as binary data
|
||||
#---------------------------------------------------------------------------------
|
||||
%.bin.o : %.bin
|
||||
#---------------------------------------------------------------------------------
|
||||
@echo $(notdir $<)
|
||||
@$(bin2o)
|
||||
|
||||
-include $(DEPENDS)
|
||||
|
||||
#---------------------------------------------------------------------------------------
|
||||
endif
|
||||
#---------------------------------------------------------------------------------------
|
75
tests/thulutemplate/arm7/source/template.c
Normal file
75
tests/thulutemplate/arm7/source/template.c
Normal file
@ -0,0 +1,75 @@
|
||||
/*---------------------------------------------------------------------------------
|
||||
|
||||
default ARM7 core
|
||||
|
||||
Copyright (C) 2005
|
||||
Michael Noland (joat)
|
||||
Jason Rogers (dovoto)
|
||||
Dave Murphy (WinterMute)
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any
|
||||
damages arising from the use of this software.
|
||||
|
||||
Permission is granted to anyone to use this software for any
|
||||
purpose, including commercial applications, and to alter it and
|
||||
redistribute it freely, subject to the following restrictions:
|
||||
|
||||
1. The origin of this software must not be misrepresented; you
|
||||
must not claim that you wrote the original software. If you use
|
||||
this software in a product, an acknowledgment in the product
|
||||
documentation would be appreciated but is not required.
|
||||
2. Altered source versions must be plainly marked as such, and
|
||||
must not be misrepresented as being the original software.
|
||||
3. This notice may not be removed or altered from any source
|
||||
distribution.
|
||||
|
||||
---------------------------------------------------------------------------------*/
|
||||
#include <nds.h>
|
||||
#include <dswifi7.h>
|
||||
#include <maxmod7.h>
|
||||
|
||||
//---------------------------------------------------------------------------------
|
||||
void VcountHandler() {
|
||||
//---------------------------------------------------------------------------------
|
||||
inputGetAndSend();
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------------
|
||||
void VblankHandler(void) {
|
||||
//---------------------------------------------------------------------------------
|
||||
Wifi_Update();
|
||||
}
|
||||
|
||||
|
||||
//---------------------------------------------------------------------------------
|
||||
int main() {
|
||||
//---------------------------------------------------------------------------------
|
||||
irqInit();
|
||||
fifoInit();
|
||||
|
||||
// read User Settings from firmware
|
||||
readUserSettings();
|
||||
|
||||
// Start the RTC tracking IRQ
|
||||
initClockIRQ();
|
||||
|
||||
SetYtrigger(80);
|
||||
|
||||
installWifiFIFO();
|
||||
installSoundFIFO();
|
||||
|
||||
mmInstall(FIFO_MAXMOD);
|
||||
|
||||
installSystemFIFO();
|
||||
|
||||
irqSet(IRQ_VCOUNT, VcountHandler);
|
||||
irqSet(IRQ_VBLANK, VblankHandler);
|
||||
|
||||
irqEnable( IRQ_VBLANK | IRQ_VCOUNT | IRQ_NETWORK);
|
||||
|
||||
// Keep the ARM7 mostly idle
|
||||
while (1) swiWaitForVBlank();
|
||||
}
|
||||
|
||||
|
139
tests/thulutemplate/arm9/Makefile
Normal file
139
tests/thulutemplate/arm9/Makefile
Normal file
@ -0,0 +1,139 @@
|
||||
#---------------------------------------------------------------------------------
|
||||
.SUFFIXES:
|
||||
#---------------------------------------------------------------------------------
|
||||
ifeq ($(strip $(DEVKITARM)),)
|
||||
$(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitARM")
|
||||
endif
|
||||
|
||||
include $(DEVKITARM)/ds_rules
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# BUILD is the directory where object files & intermediate files will be placed
|
||||
# SOURCES is a list of directories containing source code
|
||||
# INCLUDES is a list of directories containing extra header files
|
||||
# DATA is a list of directories containing binary files
|
||||
# all directories are relative to this makefile
|
||||
#---------------------------------------------------------------------------------
|
||||
BUILD := build
|
||||
SOURCES := source ../../../src/core
|
||||
INCLUDES := include
|
||||
DATA :=
|
||||
GRAPHICS := gfx
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# options for code generation
|
||||
#---------------------------------------------------------------------------------
|
||||
ARCH := -marm
|
||||
|
||||
CFLAGS := -g -Wall -O0\
|
||||
-march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
|
||||
-ffast-math \
|
||||
$(ARCH)
|
||||
|
||||
CFLAGS += $(INCLUDE) -DARM9
|
||||
CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
|
||||
|
||||
ASFLAGS := -g $(ARCH) -march=armv5te -mtune=arm946e-s
|
||||
|
||||
LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# any extra libraries we wish to link with the project
|
||||
#---------------------------------------------------------------------------------
|
||||
LIBS := -lnds9
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# list of directories containing libraries, this must be the top level containing
|
||||
# include and lib
|
||||
#---------------------------------------------------------------------------------
|
||||
LIBDIRS := $(LIBNDS)
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# no real need to edit anything past this point unless you need to add additional
|
||||
# rules for different file extensions
|
||||
#---------------------------------------------------------------------------------
|
||||
ifneq ($(BUILD),$(notdir $(CURDIR)))
|
||||
#---------------------------------------------------------------------------------
|
||||
|
||||
export ARM9BIN := $(TOPDIR)/$(TARGET).arm9
|
||||
export ARM9ELF := $(CURDIR)/$(TARGET).arm9.elf
|
||||
export DEPSDIR := $(CURDIR)/$(BUILD)
|
||||
|
||||
export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
|
||||
$(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir)) \
|
||||
$(foreach dir,$(DATA),$(CURDIR)/$(dir))
|
||||
|
||||
CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
|
||||
CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
|
||||
SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
|
||||
BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
|
||||
PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# use CXX for linking C++ projects, CC for standard C
|
||||
#---------------------------------------------------------------------------------
|
||||
ifeq ($(strip $(CPPFILES)),)
|
||||
#---------------------------------------------------------------------------------
|
||||
export LD := $(CC)
|
||||
#---------------------------------------------------------------------------------
|
||||
else
|
||||
#---------------------------------------------------------------------------------
|
||||
export LD := $(CXX)
|
||||
#---------------------------------------------------------------------------------
|
||||
endif
|
||||
#---------------------------------------------------------------------------------
|
||||
|
||||
export OFILES := $(addsuffix .o,$(BINFILES)) \
|
||||
$(PNGFILES:.png=.o) \
|
||||
$(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)
|
||||
|
||||
export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
|
||||
$(foreach dir,$(LIBDIRS),-I$(dir)/include) \
|
||||
-I$(CURDIR)/$(BUILD)
|
||||
|
||||
export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
|
||||
|
||||
.PHONY: $(BUILD) clean
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
$(BUILD):
|
||||
@[ -d $@ ] || mkdir -p $@
|
||||
@$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
clean:
|
||||
@echo clean ...
|
||||
@rm -fr $(BUILD) *.elf *.nds* *.bin
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
else
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# main targets
|
||||
#---------------------------------------------------------------------------------
|
||||
$(ARM9BIN) : $(ARM9ELF)
|
||||
@$(OBJCOPY) -O binary $< $@
|
||||
@echo built ... $(notdir $@)
|
||||
|
||||
$(ARM9ELF) : $(OFILES)
|
||||
@echo linking $(notdir $@)
|
||||
@$(LD) $(LDFLAGS) $(OFILES) $(LIBPATHS) $(LIBS) -o $@
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# you need a rule like this for each extension you use as binary data
|
||||
#---------------------------------------------------------------------------------
|
||||
%.bin.o : %.bin
|
||||
#---------------------------------------------------------------------------------
|
||||
@echo $(notdir $<)
|
||||
@$(bin2o)
|
||||
|
||||
%.s %.h : %.png %.grit
|
||||
grit $< -fts -o$*
|
||||
|
||||
-include $(DEPSDIR)/*.d
|
||||
|
||||
#---------------------------------------------------------------------------------------
|
||||
endif
|
||||
#---------------------------------------------------------------------------------------
|
6
tests/thulutemplate/arm9/gfx/sgun.grit
Normal file
6
tests/thulutemplate/arm9/gfx/sgun.grit
Normal file
@ -0,0 +1,6 @@
|
||||
-m!
|
||||
-gB8
|
||||
#metatile
|
||||
-Mh4
|
||||
-Mw8
|
||||
|
BIN
tests/thulutemplate/arm9/gfx/sgun.png
Normal file
BIN
tests/thulutemplate/arm9/gfx/sgun.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 747 B |
8
tests/thulutemplate/arm9/gfx/tsprite.grit
Normal file
8
tests/thulutemplate/arm9/gfx/tsprite.grit
Normal file
@ -0,0 +1,8 @@
|
||||
#8 bit bitmap
|
||||
-gB8
|
||||
|
||||
#Tile the image
|
||||
-gt
|
||||
|
||||
#cyan transparent
|
||||
-gT 00FFFF
|
BIN
tests/thulutemplate/arm9/gfx/tsprite.png
Normal file
BIN
tests/thulutemplate/arm9/gfx/tsprite.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.3 KiB |
158
tests/thulutemplate/arm9/source/newMoney.cpp
Normal file
158
tests/thulutemplate/arm9/source/newMoney.cpp
Normal file
@ -0,0 +1,158 @@
|
||||
|
||||
|
||||
/*---------------------------------------------------------------------------------
|
||||
|
||||
Simple console print demo
|
||||
-- dovoto
|
||||
Thank you dovoto. This has become my personal sandbox for toying with babycthulu
|
||||
It's become something else.
|
||||
---------------------------------------------------------------------------------*/
|
||||
#include <nds.h>
|
||||
#include <stdio.h>
|
||||
#include "../../../../include/babycthulu.h"
|
||||
#include "tsprite.h"
|
||||
#include "sgun.h"
|
||||
|
||||
//---------------------------------------------------------------------------------
|
||||
//unsigned short* g_gfx;
|
||||
bcthulu* tblu; //long pointer to cthulu
|
||||
bluSprite bsp;
|
||||
bluAnimation tban;
|
||||
bluAnimation tban2;
|
||||
bluSprite bsp2;
|
||||
|
||||
void initRes(void);
|
||||
bool FrameProc(bluVent bluMe);
|
||||
bool DrawGLScene();
|
||||
static unsigned int rtri;
|
||||
static unsigned int rquad;
|
||||
|
||||
int main(void) {
|
||||
//---------------------------------------------------------------------------------
|
||||
|
||||
tblu = bluCreate();
|
||||
initRes();
|
||||
bsp = *((bluSprite*)tblu->System_ResourceFactory());
|
||||
tblu->Input_Init();
|
||||
tblu->GFX_Initiate();
|
||||
tblu->GFX_LDSprite(&bsp);
|
||||
tblu->GFX_InitAnimationFrames(&tban, 2);
|
||||
tblu->GFX_AddAnimationFrame(&tban, 0, sgunTiles, sgunPal, sgunTilesLen, sgunPalLen);
|
||||
tblu->GFX_AddAnimationFrame(&tban, 1, sgunTiles+512, sgunPal, sgunTilesLen, sgunPalLen);
|
||||
tblu->System_SetFunc(FrameProc, BLUFRAMFUNC);
|
||||
consoleDemoInit(); //setup the sub screen for printing
|
||||
tblu->System_Start();
|
||||
|
||||
tblu->GFX_Init3DDevice();
|
||||
while(1){
|
||||
DrawGLScene();
|
||||
glFlush(0);
|
||||
|
||||
}
|
||||
|
||||
/* tblu->Release();
|
||||
while(1) {
|
||||
|
||||
touchRead(&touch);
|
||||
iprintf("Touch y = %04i, %04i\n", touch.rawy, touch.py);
|
||||
|
||||
swiWaitForVBlank();
|
||||
}
|
||||
|
||||
*/ return 0;
|
||||
}
|
||||
|
||||
void initRes(void){
|
||||
//this global wrapper allows the factory to create your resources
|
||||
//remember tblu likes to be global
|
||||
bluWrapper* g_Wrap = tblu->System_GetWrapperHandle();
|
||||
g_Wrap->sprW.init = 0;
|
||||
g_Wrap->sprW.framerate = 18;
|
||||
g_Wrap->sprW.counter = 0;
|
||||
g_Wrap->sprW.frame = 0;
|
||||
g_Wrap->sprW.tiles = sgunTiles;
|
||||
g_Wrap->sprW.tlen = 64*32;
|
||||
g_Wrap->sprW.pal = sgunPal;
|
||||
g_Wrap->sprW.plen = sgunPalLen;
|
||||
g_Wrap->sprW.sm = SpriteMapping_1D_128;
|
||||
g_Wrap->sprW.sz = SpriteSize_64x32;
|
||||
g_Wrap->sprW.sfmt = SpriteColorFormat_256Color;
|
||||
g_Wrap->sprW.x = 32;
|
||||
g_Wrap->sprW.y = 32;
|
||||
g_Wrap->sprW.id = 0;
|
||||
g_Wrap->sprW.priority = 0;
|
||||
}
|
||||
|
||||
bool FrameProc(bluVent bluMe){
|
||||
tblu->Input_KeysPressed();
|
||||
if(bluMe.msg == PWR_ON){
|
||||
}
|
||||
if(bluMe.msg == NO_MSG){
|
||||
}
|
||||
if(bluMe.msg == NULL_MSG){
|
||||
printf("EOQ! \n");
|
||||
}
|
||||
if(bluMe.msg == KEYPRESS){
|
||||
if(bluMe.keys == KEY_A){
|
||||
tblu->System_Msg("A Pressed!");
|
||||
for(int i = 0; i < 150; i++){
|
||||
tblu->GFX_PlayAnimation(&bsp, &tban);
|
||||
tblu->GFX_BltSpr(&bsp);
|
||||
swiWaitForVBlank();
|
||||
}
|
||||
}
|
||||
if(bluMe.keys == KEY_B){
|
||||
tblu->System_Msg("B Pressed!");
|
||||
//tblu->GFX_PlayAnimation(&bsp, &tban2);
|
||||
tblu->GFX_BltSpr(&bsp);
|
||||
swiWaitForVBlank();
|
||||
}
|
||||
if(bluMe.keys == KEY_UP){
|
||||
tblu->System_LnUp();
|
||||
}
|
||||
|
||||
if(bluMe.keys == KEY_DOWN){
|
||||
tblu->System_LnDn();
|
||||
//bluVent b = {QUIT};
|
||||
//tblu->Input_PushEvent(b);
|
||||
}
|
||||
}
|
||||
if(bluMe.msg == QUIT){
|
||||
return true;
|
||||
}
|
||||
//this is just a test hope it works, if program, idles wait for input
|
||||
return false;
|
||||
}
|
||||
|
||||
bool DrawGLScene() // Here's Where We Do All The Drawing
|
||||
{
|
||||
|
||||
/*ds does this automagicaly*///glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear Screen And Depth Buffer
|
||||
glLoadIdentity(); // Reset The Current Modelview Matrix
|
||||
glTranslatef(-1.5f,0.0f,-6.0f); // Move Left 1.5 Units And Into The Screen 6.0
|
||||
glRotatef(rtri,0.0f,1.0f,0.0f); // Rotate The Triangle On The Y axis ( NEW )
|
||||
glColor3f(1, 1, 1); // set the vertex color
|
||||
glBegin(GL_TRIANGLES); // Start Drawing A Triangle
|
||||
glColor3f(1.0f,0.0f,0.0f); // Set Top Point Of Triangle To Red
|
||||
glVertex3f( 0.0f, 1.0f, 0.0f); // First Point Of The Triangle
|
||||
glColor3f(0.0f,1.0f,0.0f); // Set Left Point Of Triangle To Green
|
||||
glVertex3f(-1.0f,-1.0f, 0.0f); // Second Point Of The Triangle
|
||||
glColor3f(0.0f,0.0f,1.0f); // Set Right Point Of Triangle To Blue
|
||||
glVertex3f( 1.0f,-1.0f, 0.0f); // Third Point Of The Triangle
|
||||
glEnd(); // Done Drawing The Triangle
|
||||
glLoadIdentity(); // Reset The Current Modelview Matrix
|
||||
glTranslatef(1.5f,0.0f,-6.0f); // Move Right 1.5 Units And Into The Screen 6.0
|
||||
glRotatef(rquad,1.0f,0.0f,0.0f); // Rotate The Quad On The X axis ( NEW )
|
||||
glColor3f(0.5f,0.5f,1.0f); // Set The Color To Blue One Time Only
|
||||
glBegin(GL_QUADS); // Draw A Quad
|
||||
glVertex3f(-1.0f, 1.0f, 0.0f); // Top Left
|
||||
glVertex3f( 1.0f, 1.0f, 0.0f); // Top Right
|
||||
glVertex3f( 1.0f,-1.0f, 0.0f); // Bottom Right
|
||||
glVertex3f(-1.0f,-1.0f, 0.0f); // Bottom Left
|
||||
glEnd(); // Done Drawing The Quad
|
||||
rtri+=0.9f; // Increase The Rotation Variable For The Triangle ( NEW )
|
||||
rquad-=0.75f; // Decrease The Rotation Variable For The Quad ( NEW )
|
||||
return false; // Keep Going
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user