Difference between revisions of "User:Vega"
(33 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | |||
{| class="textbox float-right grid" | {| class="textbox float-right grid" | ||
|+ Vega | |+ Vega | ||
|- | |- | ||
! Avatar: | ! Avatar: | ||
− | | [[File: | + | | [[File:Vega's Profile Picture.png]] |
|- | |- | ||
! Discord: | ! Discord: | ||
− | | | + | | vega8365 |
|- | |- | ||
! Website: | ! Website: | ||
− | | [ | + | | [https://mariokartwii.com/ MarioKartWii.com] |
|} | |} | ||
− | Hi, my name is Vega. I am the founder of the [ | + | Hi, my name is Vega. I am the founder & admin of the [https://mariokartwii.com/ MarioKartWii.com Forums]. Please note that these are not the old forums from many years ago (pre 2017). I am a veteran PowerPC Assembly Code Writer/Creator that has created over 100 Mario Kart Wii codes. If you use any codes I have created for your 'Hack Packs', please give proper credits. Thank you very much. If you are interested in learning PowerPC Assembly, view some of the Guides/How-To's on my Website. |
− | |||
− | If you use any codes I have created for your 'Hack Packs', please give proper credits. Thank you very much. If you are interested in learning PowerPC Assembly, view some of the Guides/How-To's on my Website. | ||
{|class=wikitable | {|class=wikitable | ||
Line 29: | Line 26: | ||
|- | |- | ||
| Never Pickup Certain Item From Box | | Never Pickup Certain Item From Box | ||
+ | |- | ||
+ | | Change Mii Names In Between Online Races | ||
+ | |- | ||
+ | | Write to File on SD Card | ||
|- | |- | ||
| Selective Item Max Probability | | Selective Item Max Probability | ||
− | |||
− | |||
|- | |- | ||
| Ultimate Region ID Cycler In Between Races | | Ultimate Region ID Cycler In Between Races | ||
Line 53: | Line 52: | ||
|- | |- | ||
| TAS Code (my own version that works for all controllers; credits to Mdmwii and Bully for their Live Replay Codes) | | TAS Code (my own version that works for all controllers; credits to Mdmwii and Bully for their Live Replay Codes) | ||
+ | |- | ||
+ | | Luck Wheelie Bot (my own version that works for all controllers) | ||
+ | |- | ||
+ | | Rapid Fire/Hop (my own version that works for all controllers) | ||
|- | |- | ||
| Region ID Algorithm Modifier | | Region ID Algorithm Modifier | ||
Line 65: | Line 68: | ||
|- | |- | ||
| Race as Ghost on Ghost Replay | | Race as Ghost on Ghost Replay | ||
+ | |- | ||
+ | | Dump All Opponents' IP Address & Important USER Record Info to NAND | ||
|- | |- | ||
| Change Reg ID, Flag, Globe Pos Live in Room or in Between Races | | Change Reg ID, Flag, Globe Pos Live in Room or in Between Races | ||
Line 85: | Line 90: | ||
|- | |- | ||
| Random Track Selection For Offline | | Random Track Selection For Offline | ||
+ | |- | ||
+ | | Universal IOS | ||
+ | |- | ||
+ | | File Encryptor/Decryptor (co-created with 1superchip) | ||
|- | |- | ||
| Remove Mushroom Bug (my own version; Leseratte was the first to make this) | | Remove Mushroom Bug (my own version; Leseratte was the first to make this) | ||
Line 90: | Line 99: | ||
| Mushroom Bug Item Modifier | | Mushroom Bug Item Modifier | ||
|- | |- | ||
− | | | + | | Friend Roster Flag & Globe Location Modifiers |
|- | |- | ||
− | | | + | | Bypass Mii Data CRC16 Check |
|- | |- | ||
− | | | + | | Load Any Data Save |
|- | |- | ||
| Force Character/Vehicle Everywhere | | Force Character/Vehicle Everywhere | ||
|- | |- | ||
− | | Memory | + | | Memory Editor |
+ | |- | ||
+ | | Domain Name Changer | ||
+ | |- | ||
+ | | XYZ Position Swapper | ||
+ | |- | ||
+ | | License Creation VR+BR Modifier | ||
+ | |- | ||
+ | | Activate Bullet Bill at Anytime | ||
|- | |- | ||
− | | | + | | Late Trick Bot |
|- | |- | ||
− | | | + | | Trick Timing + Difficulty Modifier |
+ | |- | ||
+ | | Trick Anytime Anywhere | ||
+ | |- | ||
+ | | Hop Anytime Anywhere | ||
|} | |} | ||
Line 136: | Line 157: | ||
== V-Unlock (A Wii Homebrew Unlocking App for Mario Kart Wii) == | == V-Unlock (A Wii Homebrew Unlocking App for Mario Kart Wii) == | ||
− | Based on the work I did on my code 'Perfect License Unlock & VR+BR Modifier', I | + | Based on the work I did on my code 'Perfect License Unlock & VR+BR Modifier', I have created a Wii HBC application to unlock everything for Mario Kart Wii. The app is called V-Unlock. V-Unlock will unlock everything for every license for all your Mario Kart Wii Data Saves. You have the ability to choose any Star Rank, whether or not to apply 9999 VR+BR, and whether not to apply 100% Wii Wheel Stat. |
− | Download (v0.4.1) [https:// | + | Latest Version Download (v0.5) [https://mariokartwii.com/downloads/V-Unlock0.5.zip HERE] |
+ | |||
+ | Previous Version Download (v0.4.1) [https://mariokartwii.com/downloads/VUnlock-Master.zip HERE] | ||
{| class="wikitable" | {| class="wikitable" | ||
Line 145: | Line 168: | ||
! align=left| Date of release | ! align=left| Date of release | ||
! align=left| Information | ! align=left| Information | ||
+ | |- | ||
+ | | v0.5 (Proper Manners) | ||
+ | | 2022-3-04 | ||
+ | | | ||
+ | * Fixed Star Rank editing mechanism to only modify necessary bits | ||
+ | * Added VR+BR option to reset it back to 5000 | ||
+ | * Binary package compiled with latest DevkitPPC version at the time | ||
+ | * Numerous source optimizations | ||
|- | |- | ||
| v0.4.1 (Lol typo) | | v0.4.1 (Lol typo) | ||
Line 177: | Line 208: | ||
* App compiles and can run | * App compiles and can run | ||
* Only works for RMCP data save | * Only works for RMCP data save | ||
+ | |} | ||
+ | |||
+ | == Waltress (First ever PowerPC Assembler that's written in PowerPC) == | ||
+ | |||
+ | I have always wanted to create a PPC Assembler that's written in PPC. A sort of personal 'proof of work'. In August 2021, I began working on such a project, but then halted the work shortly after. Fast forward to June 2022, I've decided to finish the project and was able to push out a initial public release on July 4th, 2022. I call the project 'Waltress'. | ||
+ | |||
+ | Waltress is the first ever PPC Assembler that's completely handwritten in PowerPC. It is 100% Broadway (Wii CPU) compliant. She can be used as a HBC app or as a Desktop app (QEMU required). Waltress can also assemble Gecko Codes with full support for the 04, 06, C0, and C2 codetypes. | ||
+ | |||
+ | For assembling, a source.s file is expected to be present in the working directory. For disassembling, a code.txt file is expected instead. After Waltress has been executed, she will give you a Success Message or an Error Message. During assembling, if a faulty instruction(s) exist, she will notify you of the instruction (1st instruction only if multiple), and give you a vague reason as to why said instruction is faulty. | ||
+ | |||
+ | Gecko Cheat codes require Waltress-unique "Gecko Headers". Be sure to thoroughly read the README and NOTES.txt documents before using the App. | ||
+ | |||
+ | Latest Version Download (v0.9) - [https://mariokartwii.com/downloads/Waltress03242024.zip HERE] | ||
+ | |||
+ | GitHub Repo - https://github.com/VegaASM/Waltress/ | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! align=left| Version | ||
+ | ! align=left| Date of release | ||
+ | ! align=left| Information | ||
+ | |- | ||
+ | |v0.9 | ||
+ | | 2024-3-24 | ||
+ | | | ||
+ | *Lifted more IMM restrictions off many instructions | ||
+ | *Fixed a tiny bug in the disassembler when it came to deciphering crclr vs crxor instruction | ||
+ | *On previous version, I thought I fixed the "junk name-only" bug. Apparently I didn't, so now it's actually fixed. | ||
+ | |- | ||
+ | |v0.8 | ||
+ | | 2024-3-18 | ||
+ | | | ||
+ | *Engine files are now standard functions within Source. | ||
+ | *Some Immediate Value restrictions have been lifted | ||
+ | *Added in subi, subis, and subic(.) simplified mnemonics. Somehow I forgot those? lol | ||
+ | *Fixed Bug that allowed multiple branch landings spots to have the same name | ||
+ | *Fixed Bug that allowed name-only instructions to have junk appended to it and still be assembled | ||
+ | *Fixed Bug that used SIMM range instead of UIMM range for addis when assembling | ||
+ | *Placed in a function to check if any IMM exceeds 8 digits in net width. | ||
+ | |- | ||
+ | |v0.7 | ||
+ | | 2024-2-14 | ||
+ | | | ||
+ | *Branch Labels (with some restrictions) can now be used during assembling | ||
+ | *Fixed bug where addis/lis was being disassembled using SIMM instead of UIMM | ||
+ | *Fixed bug that prevented faulty instruction from being displayed on HBC app error message during assembling | ||
+ | |- | ||
+ | |v0.6.1 | ||
+ | | 2024-1-18 | ||
+ | | | ||
+ | *Restrictions on location of Comments removed | ||
+ | *Chain comments (/*example*/) now allowed | ||
+ | *Restrictions of having spaces, tabs, & enters before Gecko Header removed | ||
+ | *Fixed bug on interpreting new lines (Enters vs Carriages) | ||
+ | |- | ||
+ | |v0.6 | ||
+ | | 2023-10-16 | ||
+ | | | ||
+ | *Desktop version now available (requires QEMU) | ||
+ | *Both Engines completely overhauled | ||
+ | *Will be notified of 1st faulty instruction when assembling if such a case arises | ||
+ | *Quirky SIMM ranges fixed | ||
+ | *Super strict formatting removed | ||
+ | *All simplified mnemonics (except clrlslwi, la, extlwi, extrwi, inslwi, & insrwi) now supported | ||
+ | *Files can now have comments, albeit it with some restrictions | ||
+ | *Files can now have extra spaces, enters, tabs, etc | ||
+ | *Two bugs fixed on the Assembling side | ||
+ | *Removal of Quirky Error Code system. Now uses regular Error Text Messages | ||
+ | *Binary file (code.bin) support removed | ||
+ | *File Deletion support removed | ||
+ | |- | ||
+ | | v0.5 | ||
+ | | 2022-7-30 | ||
+ | | | ||
+ | *Can now decompile Gecko Cheat Codes. New secondary menu within App allows users to choose disassembly/decompilation option. | ||
+ | |- | ||
+ | | v0.4 | ||
+ | | 2022-7-26 | ||
+ | | | ||
+ | *Can now compile Gecko Cheat Codes, however decompiling is not supported. Gecko related items are decommpiled to their PPC instruction equivalents | ||
+ | * Gecko codes supported at 32-RAM Write, String Write, Execute ASM, and Insert ASM. | ||
+ | * C0 compilation will auto add final blr for you. | ||
+ | |- | ||
+ | | v0.3 | ||
+ | | 2022-7-11 | ||
+ | | | ||
+ | *Codes can now assemble-to/disassemble-from a code.txt file. Binary file option still available. | ||
+ | *Added more error code returns due to added option of code.txt | ||
+ | *Option added in to delete original input file after successful assembly/disassembly. | ||
+ | *More typo and code clean up | ||
+ | |- | ||
+ | | v0.2 | ||
+ | | 2022-7-05 | ||
+ | | | ||
+ | * Added in blr(l), bctr(l), sub(./o), and subc (./o) simplified mnemonics | ||
+ | * Re-did initial process of creating HBC application, saved some lines of pre-generated Assembly code | ||
+ | * Got rid of -33 error code in HBC app. If a source line is too long, we will let it output the error of former -34. | ||
+ | * Engine files no longer hardcoded to certain function addr's that were specific to PAL MKWii. | ||
+ | * Fixed many typos (lol) | ||
+ | |- | ||
+ | | v0.1 | ||
+ | | 2022-7-04 | ||
+ | | | ||
+ | * Initial public release | ||
|} | |} |
Latest revision as of 00:51, 25 March 2024
Avatar: | |
---|---|
Discord: | vega8365 |
Website: | MarioKartWii.com |
Hi, my name is Vega. I am the founder & admin of the MarioKartWii.com Forums. Please note that these are not the old forums from many years ago (pre 2017). I am a veteran PowerPC Assembly Code Writer/Creator that has created over 100 Mario Kart Wii codes. If you use any codes I have created for your 'Hack Packs', please give proper credits. Thank you very much. If you are interested in learning PowerPC Assembly, view some of the Guides/How-To's on my Website.
Some Codes I Have Created |
---|
Perfect License Unlock + VR/BR Modifier |
Perfect Item Code |
Perfect Character/Vehicle Selection |
Steal-Mii |
Never Pickup Certain Item From Box |
Change Mii Names In Between Online Races |
Write to File on SD Card |
Selective Item Max Probability |
Ultimate Region ID Cycler In Between Races |
Friend Roster Plus Your Mii; Name Changer Plus Extender |
Friend Roster Friend Code Modifier |
SYSCONF MKW Region Settings NAND Editor |
Graphical SpeedBar (credits to Star & RiiDefi for Draw Text code) |
Graphical In-Game Item Spy Online (credits to Star & RiiDefi for Draw Text code) |
Advantageous Character/Vehicle Selection |
Equal Item Probability |
Live Replay (my own version that works for all controllers; credits to Mdmwii and Bully for their Live Replay Codes) |
TAS Code (my own version that works for all controllers; credits to Mdmwii and Bully for their Live Replay Codes) |
Luck Wheelie Bot (my own version that works for all controllers) |
Rapid Fire/Hop (my own version that works for all controllers) |
Region ID Algorithm Modifier |
Globe Control |
Choose Any Position to Start Race As |
Can't Get Passed TC's Plus Perfect Shock Invincibility |
Stacked Teams |
Race as Ghost on Ghost Replay |
Dump All Opponents' IP Address & Important USER Record Info to NAND |
Change Reg ID, Flag, Globe Pos Live in Room or in Between Races |
Online Room GP Points Modifier |
Choose Character+Vehicle for All Opponents |
Show Everyone's True Region ID |
Clock |
Press Button To Turn Off Wii / Restart Game / Restart Wii / Return to Wii Menu |
Disable Data Save Reset For Region ID Change |
Force CC On Grand Prix Mode |
Force Track Selection Online |
Random Track Selection For Offline |
Universal IOS |
File Encryptor/Decryptor (co-created with 1superchip) |
Remove Mushroom Bug (my own version; Leseratte was the first to make this) |
Mushroom Bug Item Modifier |
Friend Roster Flag & Globe Location Modifiers |
Bypass Mii Data CRC16 Check |
Load Any Data Save |
Force Character/Vehicle Everywhere |
Memory Editor |
Domain Name Changer |
XYZ Position Swapper |
License Creation VR+BR Modifier |
Activate Bullet Bill at Anytime |
Late Trick Bot |
Trick Timing + Difficulty Modifier |
Trick Anytime Anywhere |
Hop Anytime Anywhere |
Some Discoveries I Have Made
Washington DC, USA Hex Byte Location Mismatch
Every Region ID has a default 'geo-location'. The default geo-location for Region ID #1 (Americas) is Washington DC, USA. The hex byte (word) value for this location by the game is 0x1BA8C937. If you want to set the USA Flag on within the game if your Country is USA, you can access the Region Settings. You will be navigated to the hidden Region-Select Channel. After connecting online to the server that holds files that contains all these Region Settings, you can select a variety of locations within USA.
The top/first option is Washington DC. If you select his location and take a view of the hex byte value for this location on the SYSCONF file, the value is 0x1BA8C938. One number higher than the other value, a mismatch.
This doesn't happen for any of the other default geo location values for the other Region IDs.
Country Code 0xFF; Region Residence Code 0xFF
If your country code value in SYSCONF is 0xFF or the region residence code (location setting within country) is also 0xFF, the game will preform a series of instructions will not use the SYSCONF's globe location value and instead grab the Region ID's default geo location.
Remnants of a Chinese Disc Region
There are 4 Disc Regions. These Disc Regions are not MKWii Region ID's. The Disc Region is a byte which you can find in the Region.Bin file of an extracted ISO/WBFS file via Wiimm's WIT Tools.
List of Disc Region Values:
- 0x00 = Japan (Traditional/Taiwan Games use this Disc Region, Nintendo only made 8 Taiwan Games)
- 0x01 = America
- 0x02 = PAL
- 0x03 = Unused
- 0x04 = Korea
These Disc Region bytes are read by your System Menu. If the Disc Region doesn't match the region of the System Menu, the disc will not be read in the Disc Channel.
Over time, there has been speculation of a never-released Simplified Chinese (China) MKW Disc due to the fact that there is a Region ID #6 (China). Also, along with the speculation of a never-released Chinese Wii made for the Chinese MKW Disc. At Memory Address 0x8028AF09 on the Korean Mario Kart Wii, there is a hex ASCII byte representing 'CN'. The 'CN' comes right after the four other listed Disc Region Abbreviations. A very likely indicator of remnants of a Disc Region for the Chinese System Menu of the Chinese Wii. Considering the fact the the 'CN' is listed after the other four Disc Regions, and the four Disc Regions are listed in order, the Chinese Disc Region may use the value of 0x05.
V-Unlock (A Wii Homebrew Unlocking App for Mario Kart Wii)
Based on the work I did on my code 'Perfect License Unlock & VR+BR Modifier', I have created a Wii HBC application to unlock everything for Mario Kart Wii. The app is called V-Unlock. V-Unlock will unlock everything for every license for all your Mario Kart Wii Data Saves. You have the ability to choose any Star Rank, whether or not to apply 9999 VR+BR, and whether not to apply 100% Wii Wheel Stat.
Latest Version Download (v0.5) HERE
Previous Version Download (v0.4.1) HERE
Version | Date of release | Information |
---|---|---|
v0.5 (Proper Manners) | 2022-3-04 |
|
v0.4.1 (Lol typo) | 2020-6-10 |
|
v0.4 (For the Sources) | 2020-4-22 |
|
v0.3 (Auto Mii) | 2020-4-06 |
|
v0.2 (Noob Alert) | 2020-3-23 |
|
v0.1 (The Beginning) | 2020-3-21 |
|
Waltress (First ever PowerPC Assembler that's written in PowerPC)
I have always wanted to create a PPC Assembler that's written in PPC. A sort of personal 'proof of work'. In August 2021, I began working on such a project, but then halted the work shortly after. Fast forward to June 2022, I've decided to finish the project and was able to push out a initial public release on July 4th, 2022. I call the project 'Waltress'.
Waltress is the first ever PPC Assembler that's completely handwritten in PowerPC. It is 100% Broadway (Wii CPU) compliant. She can be used as a HBC app or as a Desktop app (QEMU required). Waltress can also assemble Gecko Codes with full support for the 04, 06, C0, and C2 codetypes.
For assembling, a source.s file is expected to be present in the working directory. For disassembling, a code.txt file is expected instead. After Waltress has been executed, she will give you a Success Message or an Error Message. During assembling, if a faulty instruction(s) exist, she will notify you of the instruction (1st instruction only if multiple), and give you a vague reason as to why said instruction is faulty.
Gecko Cheat codes require Waltress-unique "Gecko Headers". Be sure to thoroughly read the README and NOTES.txt documents before using the App.
Latest Version Download (v0.9) - HERE
GitHub Repo - https://github.com/VegaASM/Waltress/
Version | Date of release | Information |
---|---|---|
v0.9 | 2024-3-24 |
|
v0.8 | 2024-3-18 |
|
v0.7 | 2024-2-14 |
|
v0.6.1 | 2024-1-18 |
|
v0.6 | 2023-10-16 |
|
v0.5 | 2022-7-30 |
|
v0.4 | 2022-7-26 |
|
v0.3 | 2022-7-11 |
|
v0.2 | 2022-7-05 |
|
v0.1 | 2022-7-04 |
|