Skip to content

Latest commit

 

History

History
 
 

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
================================================
   PC development tools for Vircon32 console
  (version 25.10.29). README written by Carra
================================================


What is this?

    This is a set of tools that allow you to create Vircon32
    programs from your PC, by writing C or assembly programs.
    
    There are now also some "reverse" tools that do the
    opposite: unpack a Vircon32 rom and extract from it the
    binaries, sounds and images it contains.
    
    All the programs included here are command-line tools.
    
------------------------------------------------------------

Installing 
    
    These tools are installed following a process similar to
    the one used for installing the emulator (which you will
    probably need as well). The exact steps will depend on
    your operating system.
    
    There is, however, one additional step needed after
    installing: you will need to ensure that the installed
    programs are accessible to the environment by adding the
    installation folder to the corresponding system paths.
    
------------------------------------------------------------

Included programs (build tools)

  - "compile": a C compiler that allows you to compile your
    C programs for Vircon32 into assembly. It also includes
    the headers for its standard library.
    
  - "assemble": an assembler that allows you to convert your
    assembly programs for Vircon32 into machine code.
  
  - "png2vircon": a program that allows you to convert PNG
    images into the native textures used by Vircon32.
  
  - "wav2vircon": a program that allows you to convert WAV
    sounds into the native sounds used by Vircon32
  
  - "tiled2vircon": a program that allows you to convert
    tilemaps made in the Tiled editor into 2D arrays that
    can be used natively as part of Vircon32 programs.
  
  - "packrom": this program that allows you to pack the
    binaries, images and sound of a same Vircon32 program
    into a single file, that will be executable from any
    Vircon32 emulator or implementation.
    
  - "joinpngs": this tool can take a folder with several PNG
    images and join them into a single, larger image. For
    performance this is much better than using a texture for
    every single small image. This program will also create
    a project file for the texture region editor (which is
    distributed separately). From the editor you can then
    edit region hotspots visually and export C or ASM
    headers to use the texture in your programs.
    
------------------------------------------------------------

Included programs (reverse tools)
  
  - "disassemble": a program that takes a Vircon32 machine
    code binary and converts it back into an assembly
    program. Note that, while a binary can join together a
    program and several data, this tool focuses mainly on
    the program itself.
  
  - "vircon2png": a program converts native textures used
    by Vircon32 back into PNG images.
  
  - "vircon2wav": a program converts native sounds used
    by Vircon32 back into WAV sounds.
  
  - "unpackrom": this program takes a Vircon32 rom and
    extracts its content to a folder. It will create its
    XML rom definition file, extract its program rom and
    make subfolders to extract all present textures and
    sounds.
    
------------------------------------------------------------

What's new in version 25.10.29?
  
  - Updated build to use more recent versions of C++ compiler
    and dependencies.
  - Builds are now 64-bit by default.
  - Library tinyxml2 is now built from source code.
  - Fixed compiler bug when applying logical NOT to a constant.
  - Fixed itoa for negative numbers in bases other than 10.
  - Modified assembler debug arguments for more flexiblility.

------------------------------------------------------------

License

    These programs are free and open source. They are offered
    under the 3-Clause BSD License, which full text is the
    following:
    
    Copyright 2021-2025 Carra.
    All rights reserved.
    
    Redistribution and use in source and binary forms, with or
    without modification, are permitted provided that the
    following conditions are met:
    
    1. Redistributions of source code must retain the above
    copyright notice, this list of conditions and the following
    disclaimer.
    
    2. Redistributions in binary form must reproduce the above
    copyright notice, this list of conditions and the following
    disclaimer in the documentation and/or other materials
    provided with the distribution.
    
    3. Neither the name of the copyright holder nor the names of
    its contributors may be used to endorse or promote products
    derived from this software without specific prior written
    permission.
    
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
    CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
    INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
    MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
    DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
    CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
    NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
    OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
    EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.