Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
development_tools [2021/04/25 12:22] – [Emulators] pulkomandydevelopment_tools [2023/04/23 11:36] (current) – [C compilers] pulkomandy
Line 1: Line 1:
 ====== C compilers ====== ====== C compilers ======
  
-SunPlus released sources for the C compiler. It doesn't include the assembler and is based on gcc2 so quite hard to compile: https://github.com/vsmile-dev/unsp-gcc+===== Official compiler =====
  
-uN'SP IDE is the official IDE for the CPU used. It can still be downloaded from [[https://www.generalplus.com/1LVlangLN5SVprot_noSNproduct|GeneralPlus website]] (for example in the GPL951 section) - {{ ::unspide_v3.0.17.zip |local copy}}+ 
 +SunPlus released sources for the C compiler. It doesn't include the assembler and is based on GCC 2.95 so quite hard to compile: https://github.com/vsmile-dev/unsp-gcc 
 + 
 +  * µ'nSP IDE is the official IDE for the CPU used. It can still be downloaded from [[https://www.generalplus.com/1LVlangLNw6SVw7SNservice_n_support_d|GeneralPlus website]] - {{ ::unspide_v4.0.1.zip |local copy}} 
 + 
 +===== VBCC ===== 
 + 
 +Work in progress port of vbcc: http://pulkomandy.tk/gerrit/plugins/gitiles/vbcc/+/refs/heads/unsp 
 + 
 +The lack of vasm or another assembler with object file format and linker makes this hard to use. For now, the compiler generates output compatible with naken_asm, then all the output asm files need to be concatenated and fed directly into the assembler. And there isn't really support for sections or any fancy stuff like that, so getting the variables in RAM and the code in ROM is a bit messy. 
 + 
 +Also, the code generation is completely unoptimized currently. Adding support for at least pre and post incrementation decrementation would be a great help in generating simpler code.
  
 ====== Assemblers ====== ====== Assemblers ======
  
-XASM is the original assembler provided by the uN'SP IDE+XASM is the original assembler provided by the µ'nSP IDE
  
-[[https://github.com/mikeakohn/naken_asm/|Naken assembler]] has support for uN'SP and provides a standard include file for SPG200 registers.+[[https://github.com/mikeakohn/naken_asm/|naken_asm]] has support for µ'nSP and provides a standard include file for SPG200 registers.
  
-Work in progress [[http://pulkomandy.tk/drop/0001-Start-work-on-adding-uNSP-support.patch|patch]] to add uN'SP support in [[http://sun.hasenbraten.de/vasm/|vasm]]. There are problems in vasm handling the pure 16-bit CPU, I have asked the vasm developers for help solving that.+Work in progress [[http://pulkomandy.tk/drop/0001-Start-work-on-adding-uNSP-support.patch|patch]] to add µ'nSP support in [[http://sun.hasenbraten.de/vasm/|vasm]]. There are problems in vasm handling the pure 16-bit CPU, I have asked the vasm developers for help solving that.
  
 This [[https://github.com/vsmile-dev/vsmile-rom|early homebrew experiment]] took an interesting approach of not using an assembler at all. This [[https://github.com/vsmile-dev/vsmile-rom|early homebrew experiment]] took an interesting approach of not using an assembler at all.
Line 17: Line 28:
 ====== Emulators ====== ====== Emulators ======
  
-MAME has good support for the V.Smile.+  * MAME has good support for the V.Smile. 
 +  * [[https://github.com/vsmile-dev/unununium|Unununium]] is a standalone emulator, but is known to have some bugs. 
 +  * https://github.com/Schnert0/VFrown - A more up to date and maintained standalone emulator 
 + 
 +====== Graphics ======
  
-[[https://github.com/vsmile-dev/unununium|Unununium]] is a standalone emulator, but is known to have some bugs.+  * https://github.com/gameblabla/png2vsmile PNG converter to VSmile background bitmap format
development_tools.1619346143.txt.gz · Last modified: 2021/04/25 12:22 by pulkomandy
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0