Кросс-компилятор Си под названием Calypsi

MOS Technology / Commodore / Apple II / NES etc.

Moderator: Lavr

User avatar
Shaos
Admin
Posts: 24008
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Кросс-компилятор Си под названием Calypsi

Post by Shaos »

Обнаружилось, что некоторые западные самодельщики в своих 6502 поделках используют вот такой компилятор:

https://www.calypsi.cc/
Latest release is 3.6.12 available for the following targets:
  • MOS 6502
  • WDC 65816
  • Motorola 68000
  • HP Nut (assembler only)
Supported host platforms are:
  • Arch Linux, 64-bit x86
  • Debian based Linux (built on Ubuntu 20.04), 64-bit x86
  • macOS x86
  • Windows 64-bit, built on Windows 10
Единственная проблема - это "closed source"...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Кросс-компилятор Си под названием Calypsi

Post by Lavr »

Shaos wrote:проблема - это "closed source"...
То есть, сабж - как есть, без открытых исходников?
iLavr
User avatar
Shaos
Admin
Posts: 24008
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Кросс-компилятор Си под названием Calypsi

Post by Shaos »

Они гитхаб используют, чтобы бинарные сборки для разных платформ там держать:

https://github.com/hth313/Calypsi-tool-chains/releases/tag/3.6.12
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 24008
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Кросс-компилятор Си под названием Calypsi

Post by Shaos »

Несмотря на то, что люди это используют, наверное надо убрать рекламу закрытых исходников с нашего форума (раз уж есть опенсорсные альтернативы):

 xa - Cross-assembler for 65xx/R65C02/65816 & cc65

Code: Select all

> xa --help
Usage: xa [options] file
Cross-assembler for 65xx/R65C02/65816

 -v           verbose output
 -x           old filename behaviour (overrides `-o', `-e', `-l')
              This is deprecated and may disappear in future versions!
 -C           no CMOS-opcodes
 -W           no 65816-opcodes (default)
 -w           allow 65816-opcodes
 -B           show lines with block open/close
 -c           produce `o65' object instead of executable files (i.e. don't link)
 -o filename  sets output filename, default is `a.o65'
                A filename of `-' sets stdout as output file
 -e filename  sets errorlog filename, default is none
 -l filename  sets labellist filename, default is none
 -r           adds crossreference list to labellist (if `-l' given)
 -M           allow ``:'' to appear in comments for MASM compatibility
 -R           start assembler in relocating mode
 -Llabel      defines `label' as absolute, undefined label even when linking
 -b? addr     set segment base address to integer value addr
                `?' stands for t(ext), d(ata), b(ss) and z(ero) segment
                (address can be given more than once, last one is used)
 -A addr      make text segment start at an address that when the _file_
                starts at addr, relocation is not necessary. Overrides -bt
                Other segments must be specified with `-b?'
 -G           suppress list of exported globals
 -DDEF=TEXT   defines a preprocessor replacement
 -Ocharset    set output charset (PETSCII or ASCII), case-sensitive
 -Idir        add directory `dir' to include path (before XAINPUT)
  --version   output version information and exit
  --help      display this help and exit

> cc65 --help
Usage: cc65 [options] file
Short options:
  -Cl				Make local variables static
  -Dsym[=defn]			Define a symbol
  -E				Stop after the preprocessing stage
  -I dir			Set an include directory search path
  -O				Optimize code
  -Oi				Optimize code, inline more code
  -Or				Enable register variables
  -Os				Inline some standard functions
  -T				Include source as comment
  -V				Print the compiler version number
  -W warning[,...]		Suppress warnings
  -d				Debug mode
  -g				Add debug info to object file
  -h				Help (this text)
  -j				Default characters are signed
  -mm model			Set the memory model
  -o name			Name the output file
  -r				Enable register variables
  -t sys			Set the target system
  -v				Increase verbosity

Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Кросс-компилятор Си под названием Calypsi

Post by Lavr »

Shaos wrote:Несмотря на то, что люди это используют, наверное надо убрать рекламу закрытых исходников с нашего форума...
Я лично воспринял этот пост не как рекламу, а как полезное информационное сообщение.
Если люди это используют, то, видимо, им не важно, что у этого кросс-компилятора Си нет исходного кода.
Меня, кстати, такой факт тоже не коробит. У многих компиляторов, которыми я пользуюсь, исходников нет.
А бывает и наоборот: исходники компилятора есть здесь на форуме, но фиг их просто так компильнёшь! :roll:
iLavr
User avatar
Shaos
Admin
Posts: 24008
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Кросс-компилятор Си под названием Calypsi

Post by Shaos »

А ты не попробовал это? Вдруг оно таки супер-компактный код генерит :roll:
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Кросс-компилятор Си под названием Calypsi

Post by Lavr »

Shaos wrote:А ты не попробовал это? Вдруг оно таки супер-компактный код генерит :roll:
Сейчас на работе полная запарка, не попробовал пока... :(

Я на старом ноутбуке ещё вот этот компилятор С пробовал:
cc65 - a freeware C compiler for 6502 based systems

Он упоминается местами на нашем форуме, но без ссылок.

Но, честно говоря, 6502 - это такой микропроцессор, на котором в кайф писать именно на ассемблере.
У меня на трёх последних мобильных телефонах, включая сегодняшний, был установлен компилятор
ассемблера и эмулятор 6502 - очень приятная вещь, сродни пасьянсу "Косынка"... :wink:

Сейчас у меня на смартфоне вот этот эмулятор 6502 - он нам тут на форуме знаком.
iLavr
User avatar
Shaos
Admin
Posts: 24008
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Кросс-компилятор Си под названием Calypsi

Post by Shaos »

Я там выше выхлоп сс65 тоже напечатал - он входит стандартным пакетом в составе дебияна
Lavr wrote:Сейчас у меня на смартфоне вот этот эмулятор 6502 - он нам тут на форуме знаком.
У меня в дебияне до сих пор скринсейвером стоит этот эмулятор - крутит короткие демки под эту графику с искажениями NTSC :lol:
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Кросс-компилятор Си под названием Calypsi

Post by Lavr »

Lavr wrote:У меня на трёх последних мобильных телефонах, включая сегодняшний, был установлен компилятор
ассемблера и эмулятор 6502 - очень приятная вещь, сродни пасьянсу "Косынка"... :wink:
Предыдущий мобильник - НЕсмартфон я использую сейчас в качестве будильника,
поскольку он бибикает весьма-таки громко... :wink:

Вот на нём у меня компилятор ассемблера и эмулятор 6502 - JBit
iLavr