Jump to content

Draft:Vircon32

From Wikipedia, the free encyclopedia
Vircon32
Original author(s)Carra
Initial releaseFebruary 2021; 3 years ago (2021-02)
Operating systemWindows, Mac OS, Linux
PlatformPC, Raspberry Pi, Smartphones (libretro core only)
Available inEnglish, Spanish
TypeVirtual machine, game engine
License3-Clause BSD (software), CC-BY 4.0 (documents and assets)
Websitehttps://www.vircon32.com

Vircon32 is a virtual machine created by independent developer Carra. It is a fantasy video game console based on the idea of being as simple as possible but having capabilities not limited to 8-bit aesthetics:[1], as opposed to well known fantasy consoles/computers such as PICO-8 and TIC-80.

The whole Vircon32 project is focused on being as open and accessible as possible. For that reason the whole console design is fully documented and all related official software (emulator, development tools and libretro core) is kept free and open source[2]. It also places emphasis in not being tied to any external technologies like game engines, graphic libraries or file formats[3].

Thanks to this Vircon32 can be emulated in multiple devices and software systems. In addition to its desktop emulator the console also has a Libretro core and has been officially integrated into RetroArch[4], as well as the front-ends Lakka, EmuELEC, AmberELEC and ROCKNIX. Other emulation systems are in process of integrating it as of this article[5].

Hardware design

[edit]

While the most used fantasy consoles are conceived as Lua scripting environments, Vircon32 instead defines an actual architecture with custom Instruction set architecture, detailing components and communication at low level. ROM files contain program binaries that the CPU acually executes as instructions. Every relevant aspect of the components (like endianness or bit width) is included in the design with the intent that the machine is well defined.[6]

The design of Vircon32 CPU is loosely based in [x86] processors. But unlike those this is a pure 32-bit machine: it cannot access individual bytes, or handle 8-bit/16-bit data formats. This greatly simplifies some parts of the design.[7]

Capabilities

[edit]

In terms of features this console is based on the 32-bit generation of home consoles (PSX, N64 and Saturn). However, to keep simplicity, it has no 3D capabilities and focuses on 2D instead. The console also includes some modern “quality of life” features, like a 16:9 screen.

The main features of Vircon32 are the following[8]

  • Simplified 32-bit architecture
  • 15 MHz CPU with floating point support
  • 16 MB of RAM
  • Screen of 640 x 360 pixels (16 : 9), with true color
  • Support for rotation, scaling and transparencies
  • CD-quality stereo sound with 16 channels
  • Up to 4 gamepads with 6 buttons + Start
  • Supports 1 MB memory cards to save games

Development

[edit]

Vircon32 games are meant to be developed outside the console itself, unlike other fantasy consoles. For that purpose a separate set of development tools is provided. Games can currently be written in C language or directly in assembly language[9]. As for game assets, the tools can import WAV sounds and PNG images directly. Each ROM is packed in a single file and includes not only binaries, but also any needed assets (images, sounds and data).

References

[edit]
  1. ^ "About section". Vircon32.
  2. ^ "Vircon32 License". GitHub.
  3. ^ "Devlog: Creando mi propia consola". MediaVida. 14 September 2023.
  4. ^ "Vircon32 Joins libretro/RetroArch". Libretro. 15 March 2024.
  5. ^ "Adding console Vircon32 to Recalbox". Recalbox Forum. 31 August 2024.
  6. ^ "Vircon32 Spec part 2 - Console architecture" (PDF). GitHub.
  7. ^ "Vircon32 Spec part 3 - The processor (CPU)" (PDF). GitHub.
  8. ^ "Main specs". vircon32.
  9. ^ "Development tools". Vircon32.
[edit]

Category:Video game engines Category:Fantasy video game consoles Category:Virtual machines