const char scroll_text[] = { "Greetings! Lameguy64 proudly presents a new PlayStation homebrew demo called " "n00bDEMO and is very much the first time I've released a new demo in years! The " "last time I released a PlayStation demo was Meido-Demo back in 2013 and boy " "does this new demo show how far I've gotten good at programming for the " "PlayStation with graphical effects such as stencil masks and cel-shading " "never before seen in demos that I'm aware of presented in hi-res mode at 60FPS " "(50 if PAL). Though there's some flickering issues here and there (though it " "probably flickers less in PAL mode and none on the PS2 and emulators) which " "I'll explain the cause of such problems in a bit...\n" "Making this demo was pretty challenging (actually, mostly annoying) but " "mostly for the wrong reasons because this demo is actually not made using " "the official Sony SDK whatsoever. Yes, I actually put together my own SDK " "using the GNU GCC toolchain and made the PlayStation GPU and GTE libraries " "myself mostly in MIPS assembly. I call this SDK project of my own PSn00bSDK " "and is probably the first homebrewn PlayStation SDK that can actually do 3D " "graphics with full GTE support that is on-par to the official SDK even in " "its current work-in-progress state as all other open source SDK examples I've " "seen only offer very limited or no 3D capabilities whatsoever as with the case " "of PSXSDK. I used n00b in the naming as I don't want to put pro in the name " "of my projects knowing that its been used and abused in a lot of shovelware " "and I wanted something less generic sounding. This SDK project is not exactly " "professional software after all especially when I get into the issues I've had " "with this project as of the making of this demo...\n" "Currently my SDK mostly offers support for the GPU and GTE but not so much on " "other hardware features such as SPU, CD (which would be a disgrace not to support), " "MDEC, controller/memory card and serial I/O. I mostly focused on supporting the " "GPU and GTE as I feel it was the best way to present a proof of concept that making " "an open source SDK that is on par to the official SDK should definitely be " "possible especially when the ins and outs of the PlayStation hardware " "had since been extensively documented so there's absolutely no excuse for not " "supporting the hardware features of the console. I'm not certain if I'll continue " "working on this PSn00bSDK project because I've experienced numerous issues with " "this project, a lot of which appear to be compiler related (I'm using GCC " "7.2.0 targetting mipsel-unknown-elf) as doing small code changes would sometimes break " "or cripple certain parts of a large program that results to slowdown (hence " "why there's some flicker and I had to omit the Lamelotl artwork in some scenes to " "try to keep the flicker down) even when the code changes are completely unrelated to the " "parts that got affected. Issues like these made developing this demo a MASSIVE " "pain in the butt and it feels like things seem to stall more often than when using the " "official SDK which also used GCC (2.8.1 to be specific). I'm not entirely sure if " "they're optimization issues or I'm just pushing the console a little too far :). " "I feel these issues are detrimental to this project as I don't really want to " "work with a potentially unstable compiler in my SDK project as that would make " "creating much larger projects (such as a full game) an even bigger pain " "in the butt as things would break randomly over small code changes and having to " "deal with such issues do not conform to my standards. I haven't checked if " "GCC 8.2.0 has better mipsel support and I've yet to look into clang which is " "said to support MIPS down to version 1 of the ISA.\n" "What I hoped to achieve with PSn00bSDK is to create a 100% free and open " "source PlayStation SDK that is on-par to the official SDK to make homebrew " "development for the PS1 much more attractive especially to those interested " "in developing commercial homebrew for the console without the legal issues " "surrounding the use of Sony's libraries. But considering the compiler issues " "I've had and the PS1 community being mostly focussed on emulators and PSIO over " "actually making homebrew for the console and many of the folks who actually knew how " "to program for the console especially in low-level have either retired or " "disappeared, making the feat I wanted to achieve with my SDK project somewhat " "unlikely I feel. I'll be releasing source code of this demo and " "the PSn00bSDK libraries on github a week or two as of the release of this " "demo if things go according to plan on my end and contributions are accepted " "for those interested to volunteer for this project...\n" "You should have noticed by now that there's something inherently missing " "about this demo. Yes, there's no music in this demo at all. I would've " "used some CD audio for music but I never got CD playback code working for " "this demo and I've already made numerous attempts trying to crack the darn " "thing with no success. At least there's no overused Kevin Macleod music here " "unlike my last demo which I still wonder why I chose that for the music " "over rendering out a MOD file into a WAV file and using that instead, man " "was I stupid back then. Another option would be to use MOD music as I have " "some SPU support in my SDK but writing my own MOD player would take a lot of " "time and effort and finishing up this demo has taken long enough I feel as " "I was originally going to release this demo back in December of 2018. " "None of the existing MOD players can be used either as Hitmen's player " "relies on Sony's libraries and is only offered in binary form (because " "stupid) and PSXSDK's MOD player does all sample mixing in software instead " "of using the SPU for playing the samples which is abslutely retarded and is " "definitely not fit for this demo project. If you're watching this demo in " "video form I've likely dubbed over some music to help keep things " "interesting as you read this scroll text...\n" "There's actually some Scarlet Engine technology featured in this demo " "namely the SMD model data format which is basically my own implementation " "of the TMD model data for Scarlet and its drawing functions written in " "assembly. The implementation featured here uses a newer revision of the SMD " "model data and the drawing functions are a rewrite but they're still work " "in progress as it currently does not support the features added in the new " "revision of the SMD model data format. I haven't worked on Scarlet in awhile " "as I've somewhat diverted to other things as of late and I've yet to do " "research on better culling and rendering techniques as my last implementation " "wasn't really all that good I feel. I plan to implement automated culling " "using ray scanning when compiling a map and probably a geometry " "LOD system similar to Spyro's engine. Developing Scarlet has been taking a " "very long time I know but you have to consider this is being worked on by a " "single person (who's probably a nobhead) as a hobby with no prior experience " "in developing a 3D engine and to be honest, working on Scarlet feels a bit " "too big for a single individual to work on. And in case you're wondering " "about the apparent name change from Project Scarlet, that's because MS's new " "Xbox is also codenamed Project Scarlet and I don't really like to have " "Xbox fanboys looking desperately for videos about MS's Project Scarlet " "and finding videos about my Project Scarlet instead that would only serve to " "enrage them or something...\n" "Another piece of somewhat advanced technology used in this demo is that " "all the assets in this demo are all stored in the PS-EXE in LZ77 compressed " "form using my LZPack libraries to keep PS-EXE size low which speeds up the " "boot time of this demo. I actually developed the LZPack library for the " "official SDK in the past but I haven't got around to releasing them but I'm " "likely going to include them with PSn00bSDK along with the compression/packing " "tools and it should still work with the official SDK with only minor changes...\n" "I think that's pretty much all there is I wanted to say in this demo. I " "was originally going to release this demo back in December of 2018 but " "got delayed due to work and other things getting in the way but I hope " "you enjoyed watching the visuals that were presented in this little " "proof of concept demo...\n" "Greets to nocash NITROYUASH Orion danhans42 Shendo TriMesh " "inc^lightforce Shadow\n" "Programming and most graphical assets in this demo are done by me " "(Lameguy64). Lamelotl artwork drawn by Lumdrop. Hatkid from A Hat in " "Time is owned by Gears for Breakfast and the 3D model featured in this " "demo is made by me...\n" "Visit my website at http://lameguy64.tk if you want... " "Pages are super lightweight with absolutely zero ads! (except joke ads that " "don't do much other than mock the real ads, in case I've added them in the future)\n" "This has been a 2019 Meido-Tek Production!\n" };