Homebrew PICA200 shader assembler
Go to file
2022-12-25 11:30:26 +01:00
.vscode DONT USE THIS LIBRARY IF YOU DON'T KNOW HOW TO USE 2022-12-23 04:59:41 +01:00
cmake Update for better comp 2022-12-25 11:30:26 +01:00
example Update for better comp 2022-12-25 11:30:26 +01:00
include Fix a Big Mistake 2022-12-25 02:56:46 +01:00
source Update for better comp 2022-12-25 11:30:26 +01:00
.gitignore Fix a Big Mistake 2022-12-25 02:56:46 +01:00
3ds.cmake DONT USE THIS LIBRARY IF YOU DON'T KNOW HOW TO USE 2022-12-23 04:59:41 +01:00
autogen.sh Set +x bit on .sh scripts 2014-12-10 23:24:22 +01:00
Changelog.md v2.7.1 2022-09-16 15:53:34 +00:00
clean.sh Set +x bit on .sh scripts 2014-12-10 23:24:22 +01:00
CMakeLists.txt Update for better comp 2022-12-25 11:30:26 +01:00
compile DONT USE THIS LIBRARY IF YOU DON'T KNOW HOW TO USE 2022-12-23 04:59:41 +01:00
configure.ac v2.7.1 2022-09-16 15:53:34 +00: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.