Short: WinUAE-based code/music creation system Author: Hannibal/Lemon. Uploader: soren sorenhannibal com (Hannibal/Lemon.) Type: dev/cross Version: 5 Architecture: other Distribution: Aminet WINUAE Demo Toolchain 5 Put together by Hannibal/Lemon. *************************************** WHAT? A single setup that has EVERYTHING you need for WinUAE development. A Full toolchain for pixeling, tracking and coding. Just add creativity and hard work. Running examples for bootblocks and single-file demos, with ship-quality system-friendly startup code that works with all Amiga platforms. Everything should be freeware or redistributable shareware. 10 seconds to build and launch in the emulator *************************************** WHY? When I started getting back into amiga programming, there was no complete package and just lots of loose bits there are. I wanted to set it up once and for all, and share it out. So here it is - a one-stop shop for amiga demo making (and game making, for that matter). I also know from my professional life that a lot of people are too lazy to set up good workflows for themselves - in many cases because they have never seen how easy and fast it can be. I knew I could do a one-click, 10-second build and run solution. I was originally planning to make a giant surprise return demo, which is why I made the previous releases under the name XXXXX. However after years of life getting in the way, I realize that I just don't have the free time to make a demo to live up to my ambitions. Instead, I've been having fun tweaking this setup, so it's time to share it out. My own contributions to this toolchain are public domain. Use at your own risk. I believe all the code included has fairly liberal licenses, but you should read those licenses if you make tweaks to them. None of the included code should be GPL (though some binary tools may be). *************************************** WHAT DOES IT INCLUDE? In General: command-line WinUAE launchers for all common Amiga configs for single-file single-disk, and double-disk demos. WinUAE launchers support both AmigaForever and regular ROM formats, and the built-in AROS rom. WinFellow launcher for single-disk and double-disk demos Dual harddrive setup - all tools and temp files on dh0, all art and sound files on dh1 Most commands and tools have .bat files stored in the root of the package, to make it easy to get started. Music: one-click WinUAE launchers for Protracker (2.3d, 3.15 and 3.62), OctaMED, Future Composer, AHX, and TFMX (TFMX requires separate download) one-click launcher for protracker on win32 one-click WinUAE launcher for DeliTracker player command line bat-file for wav-to-raw conversion PT-01 and PT-02 sample disks Art: one-click launcher for Grafx2 Code: one-click build-and-run example for both bootblock and single-file demos single-file demo example can use music players for protracker,tfmx,OctaMED, Future Composer, and AHX, and shows how to convert and use attached sprites, copperbars, proportional width fonts, and half-brite images bootblock demo includes a packer and reports spare size command line bat-file for Mod-to-p61 conversion (so you can have one-click builds on PC even if you use The Player) one-click WinUAE launcher for P61Con (so you can hand convert a file) and Titanics Cruncher. command line image converter (KingCon), supporting images, fonts (monospace and proportional), animations, per-line palette conversion, and copper bars. Supports batch conversion including some sample art Visual Studio 2013 solution setup - single click to build, single click to launch Debug and Release builds. Visual Studio syntax highlighting (Linguist) command line tool (CopyToAdf) to create empty ADF, write tracks, write bootblocks command line tool (shallow) to prettify 68k assembler code sine generator Shrinkler How2Code documentation *************************************** HOW DO I INSTALL IT? 1. Unpack all files into a folder 2. run ExampleBootblockBuildAndRunBBAros.bat or ExampleDemoBuildAndRunDemo.bat (non-Aros versions are set to run in a500 mode instead). 3. if this doesn't launch the test bootblock/example demo then maybe something is messing up WinUAE's settings. You may have used WinUAE before, and that may have put some info in your registry. In that case, run DestroyOldUAESettings.bat, and try again 4. Get hold of the kickstart roms (1.3, 2.04, 3.0 and 3.1-a4000) and workbench 3.1 (without these step, you can only run AROS). http://www.amigaforever.com/ is the easiest (and the legal) way to get them 5. Run ToolchainAdfViewsetup.exe - this will allow you to open ADF files in windows as if they are just subfolders. 6. copy kickstart roms (either kick??.rom or the AF roms+rom.key from the AF DVD's Amiga FilesSharedrom) into the WinUAE folder. Without them, you can't run ConvertModToP61 and many of the tools. 7. Use AdfLIB to crack open the workbench 3.1 and copy the c and libs folders on top of the dh0c and dh0libs folders. Without this step, many tools may not work. For example the P61 converter (needed for mod player) will not launch. *************************************** TO JUST LAUNCH STUFF 1. run startdelitracker.bat to listen to music. Protip - download music for your DH1 folders. modland.org has many old demo songs. 2. to launch a standalone demo, use the command line format runXXX.bat ExeName (use any of the 11 winuae/winfellow permutations). It will automatically copy the file over to the temp drive before launching 3. to launch a single disk demo, use runXXX.bat diskimagename.adf/dms 4. to launch a dual disk demo, use runXXX.bat diskimagename1.adf/dms diskimagename2.adf/dms *************************************** FOR MUSICIANS ONLY 1. If you want to mess with TFMX, you have to download TFMX_V1.6_7v_fixed.lha and unpack it into the TFMX folder. 2. run startProtracker23d.bat, startProtracker315.bat, startProtracker362.bat, StartProtrackerWin32.bat, StartTFMX.bat, StartFutureComposer.bat, StartOctaMEDSoundStudio.bat, or StartAHX.bat to start tracking. 3. Load samples from dh1iffsamples 4. Save your modules on dh1. There are already samples for some programs there. 5. to convert samples to protracker-friendly iff format a. just put a wav-file (xxx.wav) in dh1wavsamples - subfolders are fine b. run ConvertWavToIff.bat xxx.wav [note] (note defaults to C3) c. you now have a matching xxx.iff in dh1iffsamples *************************************** FOR ARTISTS ONLY 1. run startgrafx2.bat to start pixelling. Save your stuff on dh1art. There is a number of samples there *************************************** FOR CODERS ONLY 1. If you don't have Visual Studio 2013 already installed, then you should get it. Visual Studio 2013 Community edition is now free - download it at https://www.visualstudio.com/en-us/products/visual-studio-community-vs.aspx 2. install toolchainlinguist.vsix if you want syntax highlighting 2b. you have to manually change the colors in tools->options->fonts and colors for the display items - that somehow doesn't transfer over from the style file: Keyword, Keyword2, Header4, Header5, Comment, Number, string. There may be multiple dupes with upper/lower cases, so just set both) 3. Open WinUAEToolchain.sln (if you want to play with the tools) exampledemo.sln or examplebootblock.sln in VS2013, and press f5 to build and launch. 3b. the BuildAndRun bat files in the examples take care of everything - Visual Studio doesn't do anything other than call the bat file. For exampledemo, it converts music and art, assembles and links, and optionally packs the final file. For Examplebootblock, it assembles and links, optionally packs the block, creates a disk image and puts the bootblock on there. It also runs a code prettifying pass, and launches the example. It takes a couple of parameters: -debug (set the Debug macro to 1 - this disables packing, and shows some copper colors), -dontrun (build only) -dontbuild (run last build), -aros (use aros rom instead of kickstart). 3c. buildAndRunDemo.bat file also contains a value for which musicplayer to use. - try to set it to 1-5 (3 and 5 of them will try to load modules that are not included in this package) 4. download "Amiga Hardware Reference Manual" - maybe look in http://amiga-manuals.xiik.net/ebooks? - and some manual for the 68000 5. you may want to download notepad++ or something else as notepad doesn't do well with unix format text files. Go to http://ninite.com to install notepad++ 6. To generate a sine table, use startSineCreator.bat 7. to manually crunch a file, use toolchainshrinkler.exe or StartTitanicsCruncher.bat 8. to manually convert a mod-file to p61 format, run startp61converter.bat 9. to automatically convert a mod-file to p61 format, run convertModToP61.bat modfilename.mod p61filename.p61 [mode] - mode can be OneFile, OneFile_Delta, OneFile_Delta_PackSample, TwoFiles, TwoFiles_Delta, TwoFiles_Delta_PackSample 10. to write files to a disk image, create a disk image, write sector, write a bootblock, or copy files to an disk image, use toolchainCopyToAdf.exe. Parameter /? gives you the full description of all options 11. to prettify a file or a number of files, run toolchainShallow -i inputfile -o outputfile [options] or -l listfile [options]. Parameter -? gives you the full description of all options 12. to debug, press shift+f12 inside WinUAE. I usually use "w 4 4 4 w" to set a breakpoint, to use with my WinUAEBreakpoint macro 12. to convert a single image or a batch of images, run toolchainKingCon. There are options up the wazoo, so check it out. Parameter -? gives you the full description of all options This is not very thoroughly tested. It focuses heavily on ocs/ecs support, but I threw in some aga features (sprite width, 24-bit palettes) with some limitations. I tried to make it complain wherever possible Special features include: Formats: chunky, sprite, attached sprite, bitplanes, ehb, and "vertical fill table" format Modes: convert images, multi-file animations, bobs, monospace fonts, or proportional fonts. Options: x/y/width/height/rotate/flip, trim unused space, mask on/off/inverted, extra blit word, sprite control word on/off, interleaved, save palette as raw or as copperlist Saves files as binary, c-format (char/short, hex or decimal) or asm-format batch conversion support Automatically tries to downconvert non-palletized images where possible. Reads many formats. It should read alpha channel where possible and use as mask color Per-line color mode - if images have more colors than allowed, this saves out an per-line pallette change list, optimized for the smallest number of palette changes. Font generation creates an ascii-to-bob index remapping table Saves a preview image helps to show what is actually stored in raw files - helpful to see that the saved data is actually valid (because it generates the preview image from the saved data, not the source data). *************************************** CREDITS Here is a list of the stuff I pulled together, in random order: Main Tools WinUAE by Bernd Schmidt, Toni Wilen, Brian King (and many others) WinFellow by Petter Schau, Worfje, Torsten Enderling vasm/vbcc/vlink by Volker Barthelmann. Repackaged with permission. this is a stock recompilation without changes. For vasm/vbcc/vlink licensing agreement please see manualsvbcc.pdf, manualsvasm.pdf, and manualsvlink.pdf VBCC/VASM also worked on by Frank Wille and others This package was originally based on Kusma's amiga-dev toolchain, but almost everything is rebuilt since then Bootblock example uses bootblock startup code - Blueberry/Loonies Packfire by Hitchhikr/Neural Demo example uses demo startup code - Blueberry/Loonies Shrinkler - Blueberry/Loonies various music players KingCon uses FreeImage by Floris van den Berg, Hervé Drolon, and others CopyToAdf uses AdfLib by Laurent Clévy, Bjarke Viksoe, Gary Harris, Dan Sutherland Shallow uses 68000 Linguistics definition file originally set up by 71M (but practically completely redone by me) ConvertWavToIff uses SoundExchange by Chris Bagwell and others convertModToP61 uses Scripit - Khalid Aldoseri P61Con (and The Player source) by - Guru/Sahara Surfers,Photon/Scoopex,NoName,Platon42,Tolkien,The Dark Coder Standalone tools Grafx2 by Sunset Design (G.Dorme & K.Maritaud) and A.Destugues & Y.Rizoud Future Composer - SUPERSERO of THE SUPERIONS and Jochen Hippel AHX by Dexter/Abyss AHX User guide redux by Lavaburn,Deltafire,Syphus,Xeron Protracker2.3d by crayon/noxious, ZAP/The Amiga Freelancers, Detron and Duff, Karsten Obarski Protracker3.15 by Outland/Cryptoburners, ZAP/The Amiga Freelancers, Karsten Obarski Protracker3.62 by TTL/Osiris, ZAP/The Amiga Freelancers, Karsten Obarski Protracker Win32 - Olav "8bitbubsy" Sorensen Protracker Command Reference by Dopefish Octamed Soundstudio by Teijo Kinunnen TFMX by Chris Hülsbeck, Peter Thierolf, Jochen Hippel and fixes by Jonathan H. Pickard TFMX player source and documentation by Jonathan H. Pickard DeliTracker by Frank Riffel and Peter Kunath Assets PT-01 and PT-02 by Photon/Scoopex sample art and music the rest by various old group mates - Facet, Slash, Mikael Balle, Jesper Kyd, Julius Misc AdfView by Bjarke Viksoe Sine Creator by Grokk and Fred of The Gang Linguist by Jesse Jones Winguide by Steven Eckles Titanics Cruncher by Triad and Zulu / Titanics jumptype by Amigaman Designs / Wizzcat MemPeek by Futuresoft HowToCode, startup code snippets, iconstartup, autogen files - Comrade J / SAE Phew, I hope that is everything