Homebrew PICA200 shader assembler
Go to file
2022-09-14 17:42:15 +02:00
source Fix segfault on invalid input register (#25) 2022-09-14 17:42:15 +02:00
.gitignore Autoconfiscate; this is required by the devkitARM build process 2014-12-10 22:28:45 +01:00
autogen.sh Set +x bit on .sh scripts 2014-12-10 23:24:22 +01:00
Changelog.md v2.7 2018-02-11 20:20:33 +01:00
clean.sh Set +x bit on .sh scripts 2014-12-10 23:24:22 +01:00
configure.ac use subdir-objects 2018-05-11 13:44:28 +02:00
COPYING Initial commit 2014-11-16 18:59:54 +01:00
example.vsh Add support for integer vector uniforms/constants and boolean uniforms 2014-12-11 17:23:29 +01:00
Makefile.am Autoconfiscate; this is required by the devkitARM build process 2014-12-10 22:28:45 +01:00
Manual.md lcnt -> aL 2017-12-27 18:43:54 +01:00
README.md Add WIP documentation 2014-12-12 22:17:17 +01:00

picasso

Introduction

picasso is a PICA200 shader assembler, written in C++. The PICA200 is the GPU used by the Nintendo 3DS.

picasso comes with a manual Manual.md that explains the shader language. example.vsh is simple example that demonstrates it.

Building

A working C++ compiler for the host is required (Windows users: use TDM-GCC), plus autotools. Use the following commands to build the program:

./autogen.sh
./configure
make

Shout-outs

  • smea for reverse-engineering the PICA200, writing documentation, working hard & making aemstro_as.py (the original homebrew PICA200 shader assembler)
  • neobrain for making nihstro-assemble, whose syntax inspired that of picasso and whose usage of boost inspired me to make my own assembler without hefty dependencies.