SPHINX C-- (LLC, low level compiler).

Started by Kestrel, January 28, 2005, 01:35:56 AM

Previous topic - Next topic

Kestrel

This is a sample:

#stack 0
#pragma option w32     //create Windows GUI EXE.
#pragma option J0      //no startup code.
#pragma option w       //enable warning.
#pragma option 3       //386 CPU.
#pragma option OBJ     //create OBJ file
#define _WINBASE_ TRUE
#define _WINGDI_ TRUE
#include "windows.h--"

#pragma option ia      // allow inline asm

extern stdcall z_decode_asm();
extern stdcall get_size();
extern stdcall get_offset();

void main()
{
_start:
// allocate memory for decompression
get_size();
EBX = GlobalAlloc(GPTR, EAX);

// get offset to compressed text
get_offset();

// start decompression
ESI = EAX; EDI = EBX;
z_decode_asm();

// display decompressed text
MessageBox(0,EBX,"C-- & MASM",MB_ICONINFORMATION);
ExitProcess(0);
}


SPHINX C-- (an intermediate position between Assembler and C)
http://c--sphinx.narod.ru/indexe.htm

Vortex

Hi Kestrel,

Sphinx C-- is a nice tool maintained regulary. It has the capability of emitting OMF / MS COFF object files making available the use of external libraries. What is good with Sphinx C-- is that it can produce directly executables like Privalov's Flat assembler.

If I remember well,the example above, doesn't it belong to TBD?

OzzY

This tool looks nice, although I can't download.
The server seems slow.

Is there another place where I can download it?

Thanks

Vortex

Hi Ozzy,

Unfortunately, the server is very slow, this is a problem. The latest version of Sphinx C-- dates 17 Jan 2007. You can get it from :

http://c--sphinx.narod.ru/compil_e.htm

OzzY

Thanks for the reply Vortex!
I think someone could try to make a mirror of this website. This looks like a usefull tool.

I have 3 questions:
1) What package should I download from that website?
2) Does RADasm support sphinx c--?
3) How Sphinx C-- compares to HLA in terms of features?

Thanks


Vortex

Hi Ozzy,

You should download the Library header files for programming under Windows :

http://c--sphinx.narod.ru/FILES/winlib.zip

Also, you find the Full package of C-- compiler v0.238 with libraries and documentation. ( V0.238 is an old one. )

http://c--sphinx.narod.ru/FILES/full_c--.zip
http://c--sphinx.narod.ru/FILES/c--39c26.zip

If I am not wrong, RadASM does not support Sphinx C-- for the moment. You should contact Ketilo, the author of RadASM to ask him if he has any plans to support the compiler.

HLA has a very powerfull macro engine and a good run-time library. It supports also Linux while Sphinx C-- is designed to be used only in Windows environment. Concerning documentation, HLA has a rich set of manuals and technical papers. Sphinx C-- is a mixture of C and asm. HLA adopted some nice features from Pascal.


Vortex

Hi RiverS,

Welcome to the forum.

The link you posted, does it point the latest release of Sphinx C--? ( 27 April 2007 )