Join us on Discord!
You can help CodeWalrus stay online by donating here.

Recent posts

Video of modded version of Music 2000 for the Playstation 1 using the Music 2002 riff and sample library:

-This tool is for reverse-engineering Music 2000, specifically the data (such as the sounds), so that eventually it can be replaced easily. It's still under development but it's progressing nicely. @Yuki is working on it. :)
There's also a Music 2000 Discord server with a room about modding the software:
Other / Re: [funny] Why good spelling ...
Last post by Nora18 - September 14, 2022, 07:24:21 AM
There are three reasons why spelling is important:

Spelling is an important component of communication.

Literacy: Spelling and reading skills are closely related and contribute to overall literacy development.

Employment: The quality of one's spelling has a direct impact on one's employment opportunities.

While autocorrect and spelling software have become commonplace in our lives, the importance of spelling has not diminished - in fact, it has never been more important. Thats why we should check grammar mistakes before you publish. for online help for grammar and spelling mistakes use grammar checker.
The album sequel 32-Bit Rekt Part 2 is now on Bandcamp and Kunaki!

1. (synth-pop)
Tales of Neon Light 05:01
2. (90's eurodance)
Maximum Liquidation 07:11
3. (UK Hardcore)
The Knight Blew the Moon Up 05:45
4. (Electronic power metal)
Dream of Omnimaga 07:32
5. (Happy hardcore)
The Walrus Dance 04:03
6. (Melodic trap)
Hodl to the Rug 04:47
7. (Freeform)
The Dreaded Chemist Screwed Up 04:39
8. (Electronic power metal)
Through the Metal Infinity 05:55
9. (90's eurodance)
Eurodance Election 04:56
10. (synth-pop/synthwave)
Stuck in my Water Bed 03:59
11. (UK hardcore)
Techno Strike 2000 05:29
12. (ambient electronic power metal)
Fantasy of Fantasies: Epilogue 09:40

Spotify, Amazon, Apple and Deezer versions will be available in two or three weeks at my new URL (see sig's last URL or previous post)

My landing page URL has changed (see last sig button), as the original URL was obtained through Freenom and I no longer have access to it (for now at least). I also made new merch that is already available at my page but due to the nature of print on demand merchandise and the fact some of my stuff is all-over-print the prices are very similar to what you see at concerts and shops that sells merch from established musicians and bands.

I ordered two samples so far to see what they look like in real life. Hopefully I can afford to do so with the others soon. I'm also working on 32-Bit Rekt Part 2 album which is over halfway done.
Update v9.3

Major Changes to AES implementation
  • aes_loadkey() is now aes_init()
  • Most of the cipher initialization now happens via the aes_init() function, including the nonce, the cipher mode, and the padding mode, and other functionalities.
  • Cipher configuration parameters passed as flags bitwise-OR'd together.
  • Padding in CBC mode is now added internally within the last block of encryption. Callable functions for padding are no longer used and have been removed.
  • Cipher state "contexts" loaded with init() are stateful and one-directional.Once a context is used for encryption or decryption, attempting to use it for the opposite operation will return an error. Two-way communication now needs two contexts initialized with the same key and parameters, but the correct nonce.
  • Encrypt and decrypt are now chainable operations. This means that `aes_encrypt(msg1+msg2)` is functionally-identical to `aes_encrypt(msg1) + aes_encrypt(msg2)`, once padding is cleared (if applicable). Same is true for decrypt.

New API for AES
aes_init(aes_ctx* ctx, const void* key, size_t keylen, const void* iv, uint24_t flags);
aes_encrypt(aes_ctx* ctx, void* plaintext, size_t len, void* ciphertext);
aes_decrypt(aes_ctx* ctx, void* ciphertext, size_t len, void* plaintext);

Arguments for Flags
// cipher mode (2-bit flag)
AES_MODE_CBC     // default

// padding mode (2-bit flag)
PAD_PKCS7        // default

// CTR mode nonce length (4-bit flag)
AES_CTR_NONCELEN(len)     // default = 8 bytes

// CTR mode counter length (4-bit flag)
AES_CTR_COUNTERLEN(len)     // default = 8 bytes

// Ex1: Set CTR mode, with 8 byte nonce length and 4 byte counter length
aes_init(&ctx, key, sizeof key, iv, AES_MODE_CTR | AES_CTR_NONCELEN(8) | AES_CTR_COUNTERLEN(4));

// Ex2: Set CBC mode, with padding mode ISO-9797 M2
aes_init(&ctx, key, sizeof key, iv, AES_MODE_CBC | PAD_ISO2);

Test away!
Heya, I am pleased to release my 16th studio album tonight: 32-Bit Rekt Part 1! Made entirely on Sony Playstation using Music 2000 (MTV Music Generator) it makes use of tricks not used before in any of my previous album released with the same software.

You will find eurodance, happy hardcore, UK hardcore, frenchcore, electronic power metal and more during your journey through this listen. For now only the Bandcamp and Kunaki versions of 32-Bit Rekt Part 1 are available, at (first two links), but Spotify, Apple Music and other services will be available in the next few weeks as well. Merch is also available at
The recent upsurge in activity and discoveries on the new Playstation Music 2000 software (A.K.A MTV Music Generator in North America) Discord server and some annoying quirks n Caustic 3 software involving transitions have revived my interest in the Music 2000 software, which came out in November 1999 on the original 1995 Playstation console. In addition to that I felt like while my newer songs were more complex, harder and sometimes still tried to recapture the feel of my older songs, the newer albums kinda lost their charm of being almost entirely made on PSOne gaming console (and in some cases PS2/Xbox, but for the new album only PS1)

As a result, I am making a brand new album entirely made with that software with no external assets nor post-processing. I am using an emulator, though, because saving songs using all the new tricks I just discovered will just result into corrupted data, and it takes too long to save on memory cards anyway, so I am using savestates. Every single song included so far either uses heavy sample editing, pitch modulation channels, abuse exploits or use other kind of trickery with samples but it's entirely possible that songs not doing so get included, especially if I am going for my very old styles from over a decade ago at some point.

So far the album includes happy hardcore, UK hardcore, frenchcore, gabber, eurodance, relaxing/ambient music and electronic power metal but might include more as I make new songs. I'm not planning to include eurobeat, though, as there are already 10,000 other eurobeat songs with identical melodies out there.

You can listen to it on Bandcamp. I might make a Youtube playlist later but many Youtube songs are older versions of the ones on Bandcamp.
In 1999, Jester Interactive released Music 2000, published by Codemasters on the original Playstation from 1995, as MTV Music Generator in North America. Although the software is extremely powerful for its time and even has sound quality that is superior to the PC version that came out the next year, documentation about the PS1 software's most advanced features was never published anywhere or was lost to time or deep far into the depths of the Wayback Machine.

The fact it's becoming easier and easier to emulate the console Music 2000 runs on on more and more platforms, as well as the software's new statuses as a retro gaming software and music software have revived its popularity in recent years, while a Discord server about it opened and revived the Music 2000 online community in the process, something that was mostly lost after TIMGUL closed down in early 2012.

This renewed popularity led to an efford by INFU to create a website where as much documentation about the PSOne version of Music 2000 as possible is included along with open-source songs released by various artists including myself. And by documentation, I am talking about the AM channel. Yes, the thing that was so cryptic to use that almost no one dared to touch it. And we're trying to find more advanced tricks, and don't worry we also talk about other things than the AM channel, I was just trying to get your attention. :)

The Discord server also contains plenty of useful tricks, a resources section and a lot of cool new tracks being posted regularly. There are already 200 members as well.

Anyway here are the links (unfortunately, @Yuki  lost mtv-music-generator . com to a domain name squatter, so we couldn't re-use that URL.)

MUSIC 2000™ Hall of Fame:
MUSIC 2000™ Discord server:
UPDATE: Album now available on Spotify, Apple Music, Deezer, and YouTube Music:
Powered by EzPortal