Waltress (PPC Assembler)
#1
Waltress

The first ever PPC Assembler that's entirely handwritten in PPC. It is 100% Broadway compliant. Waltress is also a Gecko Cheat Code assembler.

Current version: 0.6
Created by Vega



[Image: waltressAPP.jpg]
[Image: waltressHBC.jpg]



Why the name Waltress? Waltress is one of Daysha's cats, and she is a shy black & brown long hair cat with a gigantic fluffy tail. Waltress is also the site mascot.

Created by Vega
Version 0.6
Release Date: October 16, 2023

Waltress is my own PPC Assembler that I have created using handwritten PPC Assembly. There is an HBC App version and a Desktop Version (QEMU required). There is full support for 04, 06, C0, and C2 Gecko codetypes. Anything that can be assembled can be disassembled, and vice versa. Read the README! Read the NOTES.txt!!!

Here's the Waltress Package Download Links~

https://mariokartwii.com/downloads/Waltress10162023.zip (v0.6)
https://mariokartwii.com/downloads/Waltr...023sha.txt (sha256sum hash for verifying download if desired)

Here's the Github Repo Link~
https://github.com/VegaASM/Waltress

Once you have downloaded Waltress, extract the Download. There will be a "Waltress10162023" folder. Inside the folder is a README. Please READ the README to understand the rest of the files and document contained in the download, and also on how to run Waltress.

Also please READ the NOTES.txt document!

Quick Guide (HBC):
  • Extract Waltress10162023.zip
  • Inside Waltress10162023 folder is the HBC-Waltress-0.6 folder.
  • Move that folder to the /apps folder of your SD/USB device
  • Place code.txt or source.s into /apps/HBC-Waltress-0.6
  • Launch HBC, launch App, follow on-screen instructions

Quick Guide (QEMU; assumes QEMU is already installed and you know how to run it):
  • Extract Waltress10162023.zip
  • Inside Waltress10162023 folder is the DV folder.
  • Place code.txt or source.s into /DV
  • Make ./main executable and launch it. Follow on-screen instructions


--
Old version downloads and hashes:

v0.5
https://mariokartwii.com/downloads/Waltress07302022.zip
https://mariokartwii.com/downloads/Waltr...022sha.txt

v0.4
https://mariokartwii.com/downloads/Waltress07262022.zip
https://mariokartwii.com/downloads/Waltr...022sha.txt

v0.3
https://mariokartwii.com/downloads/Waltress07112022.zip
https://mariokartwii.com/downloads/Waltr...022sha.txt

v0.2
https://mariokartwii.com/downloads/Waltress07052022.zip
https://mariokartwii.com/downloads/Waltr...022sha.txt
v0.1
https://mariokartwii.com/downloads/Waltress07042022.zip
https://mariokartwii.com/downloads/Waltr...022sha.txt





Video demo of v0.6:
Reply
#2
Version 0.2 released. Nothing major, added some more simplified mnemonics and did some clean up. Version 0.3 will be a bigger release, but I will be obligated with a lot of work, so it will have to be held off for some time.

Details of changes/updates for v0.2~

*Added in blr(l), bctr(l), sub(./o), and subc(./o) simplified mnemonics
*Re-did the initial process of creating the HBC application, saved a few lines of pre-generated Assembly code for the Inline file
*Got rid of the -33 error code in the HBC app (aka -3 in Assembler engine). If a source line is simply too long, we will let it output the same error as former -34.
*Engine files no longer hardcoded to certain function addr's that were specific to PAL MKWii. Empty reserved spots in lookup table now serve that job. Function addr's are written to reserved spots by software (HBC App)
*Fixed many typoes (lol)
Reply
#3
Like always, great work by Vega
~MarioKartWii.com #1~
Reply
#4
Version 0.3 has now been released.

New features:
  • Codes can now be assembled-to/disassembled-from a code.txt file. Binary file option is still available.
  • Added more error code returns for both assembler and disassembler engine due to added option of code.txt
  • Option added in to delete original input file after a successful assembly/disassembly.
  • More typo and code clean up
Reply
#5
Version 0.4 has been released.

Here are the following new features~
  • Can now compile Gecko Cheat Codes. However, proper decompiling is not supported (example: a Gecko Opcode present at the start of code.bin/txt will be diassembled to its PPC instruction equivalent). Therefore, Waltress can still only disassemble in a 'raw style'. Raw assembling still available.
  • Gecko Cheat Codes supported (for compiling) are Mem80 32-bit RAM Write (04 Opcode), Mem80 String Write (06 Opcode), Execute ASM (C0 Opcode), and Insert ASM (C2 Opcode).
  • C0 compilation will auto add required blr for you. No need to include it in your source.s file.
Reply
#6
Version 0.5 has been released.

Waltress can now decompile Gecko Cheat Codes. New secondary menu within App allows users to choose the disassembly/decompilation option.
Reply
#7
Waltress is now on my Github Repo (finally remembered to do it lol)

https://github.com/VegaASM/Waltress
Reply
#8
~Huge Announcement!~



Version 0.6 has been released!!

Waltress has awaken from her hibernation, and she brings us a gift.   Heart

She is now at Version 0.6, well what's new? 


  • Desktop version now available (requires QEMU). Yes you can run Waltress on your computer withOUT Dolphin.  Blush
  • Both Engines completely overhauled
  • Waltress will notify you which instruction that she cannot assemble if such a case occurs (1st instruction, not all), and will give you a general reason as to why  Smile
  • Quirky SIMM ranges fixed
  • Super strict formatting removed
  • All simplified mnemonics (except clrlslwi, la, extlwi, extrwi, inslwi, & insrwi) are now supported, yes that means ALL branch simplified mnemonics work now!  Big Grin
  • Files can now have comments, albeit it with some restrictions
  • Files can now have extra spaces, enters, tabs, etc.
  • Two bugs fixed (mfsr not assembling correctly, and fmul(s)(.) + ps_mul(.) not assembling correctly)
  • No more quirky Error Code system. Error Text Messages specifying the problem are now displayed.
  • Binary file (code.bin) support removed
  • File Deletion support removed


Downloads~
Reply
#9
Update: Waltress v0.6 has been added to my github

I goofed something up on the v0.5 repo so I had to delete and start the repo from scratch again, fyi.

Link - https://github.com/VegaASM/Waltress
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)