Changes

Jump to navigation Jump to search
4,775 bytes removed ,  23:33, 5 August 2008
m
oops
I am a NERD ;-){{HomebrewPossiblyDangerous}}
PC SPECS {{Infobox homebrewapp| image = | title = [[Homebrew apps/Wii Web Server]]| desc = A web server running on wii| type = Server| author = Cboomf| download = [https:-//sourceforge.net/projects/wiiwebserver/ Project Page]| peripherals = {{Wiimote1}}{{WiFi}}{{Internet}}{{FrontSD}}| hbc=1| hbb=1}}
1: PIII 750MHz (over clocked to 800MHz), 64MB Dual Screen Graphics Card, 256MB Ram, 20GB Hard Drive, Win 98 + Ubuntu 7.10<br>{{Infobox homebrewapp| image = 2: Celeron 1.2GHz, 16MB Graohics Card, 512 MB Ram, 2x 15GB Hard Drives, Ubuntu 7.10<br>| title = [[Homebrew apps/WebRator]]3: Celeron 1.2GHz, 16MB Graphics Card, 256 MB Ram, 20GB Hard Drive, Win 98<br>| desc = Interactive cyber fun for the whole family4: AMD Athlon 1.8GHz, 128MB Graphics Card, 512MB Ram, 80GB Hard Drive, Win XP<br>| type = Fakes/Jokes5: P1 233MHz, 8MB Graphics Card, 256MB Ram, 3GB Hard Drive, Win 95<br>| author = Cboomf6| download = [http: LAPTOP : Celeron 1//cbwii.ulmb.7GHz, 230MB Graphics Card, 1GB Ram, 2x 20GB Hard Drives, Win XP + Ubuntu 7com/WebRator.10<br>zip Download]| peripherals = {{Wiimote4}}{{WiFi}}{{Internet}}}}
{{Infobox homebrewapp
| image =
| title = [[User:Cboomf/libusbkbd|libusbkbd]]
| desc = A library for usb keyboard usage
| type = Library
| author = Cboomf
| download = yes
| peripherals = {{USBKeyboard}}
}}
I am currently coding ( attempting ;-) ) a package of seemingly random bits of code that may server a purpose, may not but, it is just to learn C and have some fun with my wii{{Infobox homebrewapp| image = | title = [[User:Cboomf/libwiilight|libwiilight]]| desc = A library for the disc slot light| type = Library| author = Cboomf| download = [[Image:libwiilight.zip]]| peripherals = }}
If someone can improve it put any improvements in the Updates section at the bottom ;-)
===Code dump : ===
<source lang="c">
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <malloc.h>
#include <ogcsys.h>
#include <gccore.h>
#include <ogc/ipc.h>
#include <stdarg.h>
#include <ctype.h>
#include <unistd.h>
#include <assert.h>
static void *xfb = NULL;
static GXRModeObj *rmode = NULL;
#include "ios.c"
#include "stm.c"
#include "es.h"
#include "es.c"
#include "ipc.h"
#include "gu.c"
#include "GRRLIB.h"
#include "../gfx/music.h"
typedef void (*Loader_Entry)(void);
static u32 *xjb;
Loader_Entry loader = (Loader_Entry)0x80001800;
extern u16 *GRRLIB_buffer;
void hello(void)
{
printf("Hello world!\n");
printf("v 0.3");
}
void menutext(void)
{
printf("Menu\n");
printf("----\n");
printf("Start + Z = Return to loader\n");
printf("A !! = Elf Loader\n");
printf("B !! = System Utils\n");
printf("Y ! = Fun\n");
printf("X = Reboot Wii\n");
return;
}
void clearscreen(void)
{
int y;
for(y=0;y<34;y++)
printf(" \n");
}
void checkAndReload(void) {
PAD_ScanPads();
int buttonsDown = PAD_ButtonsHeld(0);
if( (buttonsDown & PAD_TRIGGER_Z) && (buttonsDown & PAD_BUTTON_START)) {
loader();
}
}
void console(void) {
xfb = MEM_K0_TO_K1(SYS_AllocateFramebuffer(rmode));
xjb = MEM_K0_TO_K1(SYS_AllocateFramebuffer(rmode));
console_init(xfb,20,20,rmode->fbWidth,rmode->xfbHeight,rmode->fbWidth*VI_DISPLAY_PIX_SZ);
VIDEO_Configure(rmode);
VIDEO_SetNextFramebuffer(xfb);
VIDEO_SetBlack(FALSE);
VIDEO_Flush();
VIDEO_WaitVSync();
if(rmode->viTVMode&VI_NON_INTERLACE) VIDEO_WaitVSync();
}
void sysutils(void) {
bool pressed;
pressed=false;
clearscreen();
printf("System Utils Menu\n");
printf("-----------------\n\n");
printf("X = Load IOS37\n");
printf("Y = Load IOS9\n");
printf("B = Go Back\n");
printf("Press A to continue \n");
while((pressed=false)) {
VIDEO_WaitVSync();
PAD_ScanPads();
int buttonsDown = PAD_ButtonsHeld(0);
if (buttonsDown & PAD_BUTTON_X){
__IOS_LaunchNewIOS(37);
pressed=true;
}
if (buttonsDown & PAD_BUTTON_Y){
IOS_ReloadIOS(9);
pressed=true;
}
if (buttonsDown & PAD_BUTTON_B){
pressed=true;
}
}
return;
}
void shutdown(void) { __STM_Init()I am a '''NERD''' ; STM_RebootSystem(-); __STM_Close();}
void fun(void) {PC SPECS :-
clearscreen1: PIII 750MHz (over clocked to 800MHz);, 64MB Dual Screen Graphics Card, 256MB Ram, 20GB Hard Drive, Win 98 + Ubuntu 7.10<br> __STM_Init(); printf("FUN\n"); printf("---\n\n"); int ver; int revma; int revmi; int di_fd; int es_fd; int vec; u32 wiiid; static u8 stm_inbuf[0x20] ATTRIBUTE_ALIGN(32); static u8 stm_iobuf[0x20] ATTRIBUTE_ALIGN(32); ver=IOS_GetVersion(); revma=IOS_GetRevisionMajor(); revmi=IOS_GetRevisionMinor(); printf("IOS Version 2: %d Revision : %dCeleron 1.%d \n\n"2GHz, 16MB Graohics Card, ver512 MB Ram, revma2x 15GB Hard Drives, revmi);Ubuntu 8.04<br> di_fd=IOS_Open("/dev/di",3: Celeron 1); ((u32*)stm_inbuf)[0x00] = 0x70000000; IOS_Ioctl( di_fd.2GHz, stm_inbuf[0x00]16MB Graphics Card, stm_inbuf256 MB Ram, 0x2020GB Hard Drive, stm_iobuf, 0x20); Win 98<br> printf("DVD ID 4: %s \n\n",stm_iobuf); IOS_Close(di_fd); vec=0; es_fd=IOS_Open("/dev/es",AMD Athlon 1); vec = ES_GetDeviceID(&wiiid); // printf("Console ID : %08x \n\n".8GHz, wiiid); IOS_Close(es_fd); GRRLIB_DrawImg(10128MB Graphics Card,50512MB Ram, music_width80GB Hard Drive, music_high, music_img); GRRLIB_Render(); printf("Press A to continue\n"); while(1) { VIDEO_WaitVSync(); PAD_ScanPads(); int buttonsDown = PAD_ButtonsHeld(0); if (buttonsDown & PAD_BUTTON_A){ console(); clearscreen(); menutext(); __STM_Close(); return; } }} void menu(void) { clearscreen(); menutext(); while(1) { VIDEO_WaitVSync(); checkAndReload(); PAD_ScanPads(); int buttonsDown = PAD_ButtonsHeld(0); if (buttonsDown & PAD_BUTTON_Y){ fun(); } if (buttonsDown & PAD_BUTTON_X){ shutdown(); } if (buttonsDown & PAD_BUTTON_B){ //sysutils(); } if (buttonsDown & PAD_BUTTON_A){ //elfloader(); } }}  void start(void) { PAD_ScanPads();Win XP<br> int buttonsDown = PAD_ButtonsHeld(0); if(buttonsDown & PAD_BUTTON_START) { menu(); }} int main(int argc, char **argv) {  /**************************************************************************** Initialise Video Initialise GCPad for input ****************************************************************************/  GRRLIB_buffer=(u16 *)malloc(640*240*2); VIDEO_Init(); PAD_Init(); GRRLIB_InitVideo(); GRRLIB_Start(); GRRLIB_FillScreen(0x0000); GRRLIB_Render();  switch(VIDEO_GetCurrentTvMode()) { case VI_NTSC: rmode = &TVNtsc480IntDf; break; case VI_PAL5: rmode = &TVPal528IntDf; break; case VI_MPAL: rmode = &TVMpal480IntDf; break; default: rmode = &TVNtsc480IntDf; break; }  xfb = MEM_K0_TO_K1(SYS_AllocateFramebuffer(rmode)); xjb = MEM_K0_TO_K1(SYS_AllocateFramebuffer(rmode)); console_init(xfbP1 233MHz,208MB Graphics Card,20256MB Ram,rmode->fbWidth3GB Hard Drive,rmode->xfbHeight,rmode-Win 95<br>fbWidth*VI_DISPLAY_PIX_SZ); VIDEO_Configure(rmode); VIDEO_SetNextFramebuffer(xfb); VIDEO_SetBlack(FALSE); VIDEO_Flush(); VIDEO_WaitVSync(); if(rmode->viTVMode&VI_NON_INTERLACE) VIDEO_WaitVSync(); /**************************************************************************** Main code ****************************************************************************/  hello(); printf("\n"); printf("My first native wii homebrew\n\n"); printf("Press Start 6: LAPTOP :-)\n\n"); while(Celeron 1) { VIDEO_WaitVSync(); start(); } return 0;} </source> == Updates == These may be updates/fixes for the code above-- I was able to compile your code. I think you need the most recent cvs of the libogc use Drack's guidehttp://www7GHz, 230MB Graphics Card, 1GB Ram, 2x 20GB Hard Drives, Win XP + Ubuntu 8.tehskeen.com/forums/showthread.php?t=2968Also you should not include .c files in the header.04<source lang="c"br>
<Keep in the randomness : [http:/source>/cboomf.blogspot.com Random Entry Points]
2,375

edits

Navigation menu