By the way, I also found some tools for MOS6502 in the ports tree :-)

# make quicksearch key="6502"
Port:   acme-0.97.r319,1
Path:   /usr/ports/devel/acme
Info:   Crossassembler for 6502, 65c02 and 65816 processors

Port:   cc65-2.19
Path:   /usr/ports/devel/cc65
Info:   Cross-compiler for 6502-based systems

Port:   dxa65-0.1.4
Path:   /usr/ports/devel/dxa65
Info:   Disassembler for MOS 6502 and compatible CPUs

Port:   vasm-1.8c
Path:   /usr/ports/devel/vasm
Info:   Portable 6502 6800 arm c16x jagrisc m68k ppc vidcore x86 z80 assembler

Port:   xa65-2.3.11
Path:   /usr/ports/devel/xa65
Info:   Two-pass cross-assembler for MOS 6502 and compatible CPUs

Port:   p5-Acme-6502-0.77_2
Path:   /usr/ports/emulators/p5-Acme-6502
Info:   Pure Perl 65C02 simulator

Port:   nesasm-20040314_1
Path:   /usr/ports/lang/nesasm
Info:   6502 assembler with specific NES support


Not sure about dedicated toolchain for MC68000 (16-bit Atari and
Amiga) if there needs to be one or generic compiler can cross compile
that target.. but I will know that in some time as I have both Amiga
600 and Atari ST Mega1 :-)

Best regards :-)
Tomek


On Sat, Oct 8, 2022 at 3:15 PM Tomek CEDRO <to...@cedro.info> wrote:
>
> Well, toolchain is another thing on the BSD TODO list :-) You either
> need to have Espressif toolchain installed and in path or you can
> provide your own or system toolchain by hand durign build.
>
> I am on a trip right now with my backup laptop that is not my main
> development workstation, sorry, but the summary is below.
>
> 1. Because FreeBSD can natively emulate Linux ELF binaries, I did a
> trick with support of Espressif that allows download and install Linux
> tools on FreeBSD with ESP-IDF. That works fine.. but it would be
> perfect to build and distribute also toolchain binaries for FreeBSD by
> Espressif. So far I have used ESP IDF Linux tools on FreeBSD for
> initial experiments on ESP32 and ESP32-C3.
>
> % uname -a
> FreeBSD 0xCFMX4 13.1-RELEASE-p2 FreeBSD 13.1-RELEASE-p2 GENERIC amd64
>
> % ls -1 ~/.espressif/tools
> esp32s2ulp-elf
> esp32ulp-elf
> openocd-esp32
> riscv32-esp-elf
> xtensa-esp32-elf
> xtensa-esp32s2-elf
> xtensa-esp32s3-elf
>
> That gives:
>
> % ./xtensa-esp32-elf-gcc -v
> Using built-in specs.
> COLLECT_GCC=./xtensa-esp32-elf-gcc
> COLLECT_LTO_WRAPPER=/ztuff/cd/.espressif/tools/xtensa-esp32-elf/esp-2021r2-8.4.0/xtensa-esp32-elf/bin/../libexec/gcc/xtensa-esp32-elf/8.4.0/lto-wrapper
> Target: xtensa-esp32-elf
> Configured with:
> /builds/idf/crosstool-NG/.build/xtensa-esp32-elf/src/gcc/configure
> --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu
> --target=xtensa-esp32-elf
> --prefix=/builds/idf/crosstool-NG/builds/xtensa-esp32-elf
> --with-local-prefix=/builds/idf/crosstool-NG/builds/xtensa-esp32-elf/xtensa-esp32-elf
> --with-headers=/builds/idf/crosstool-NG/builds/xtensa-esp32-elf/xtensa-esp32-elf/include
> --with-newlib --enable-threads=no --disable-shared
> --with-pkgversion='crosstool-NG esp-2021r2' --disable-__cxa_atexit
> --enable-cxx-flags=-ffunction-sections --disable-libgomp
> --disable-libmudflap --disable-libmpx --disable-libssp
> --disable-libquadmath --disable-libquadmath-support
> --with-gmp=/builds/idf/crosstool-NG/.build/xtensa-esp32-elf/buildtools
> --with-mpfr=/builds/idf/crosstool-NG/.build/xtensa-esp32-elf/buildtools
> --with-mpc=/builds/idf/crosstool-NG/.build/xtensa-esp32-elf/buildtools
> --with-isl=/builds/idf/crosstool-NG/.build/xtensa-esp32-elf/buildtools
> --enable-lto --enable-target-optspace --without-long-double-128
> --disable-nls --enable-multiarch --enable-languages=c,c++
> --disable-libstdcxx-verbose --enable-threads=posix
> --enable-gcov-custom-rtio --enable-libstdcxx-time=yes
> Thread model: posix
> gcc version 8.4.0 (crosstool-NG esp-2021r2)
>
>
> % ./riscv32-esp-elf-gcc -v
> Using built-in specs.
> COLLECT_GCC=./riscv32-esp-elf-gcc
> COLLECT_LTO_WRAPPER=/ztuff/cd/.espressif/tools/riscv32-esp-elf/esp-2021r2-8.4.0/riscv32-esp-elf/bin/../libexec/gcc/riscv32-esp-elf/8.4.0/lto-wrapper
> Target: riscv32-esp-elf
> Configured with:
> /builds/idf/crosstool-NG/.build/riscv32-esp-elf/src/gcc/configure
> --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu
> --target=riscv32-esp-elf
> --prefix=/builds/idf/crosstool-NG/builds/riscv32-esp-elf
> --with-local-prefix=/builds/idf/crosstool-NG/builds/riscv32-esp-elf/riscv32-esp-elf
> --with-headers=/builds/idf/crosstool-NG/builds/riscv32-esp-elf/riscv32-esp-elf/include
> --with-newlib --enable-threads=no --disable-shared --with-arch=rv32imc
> --with-abi=ilp32 --with-pkgversion='crosstool-NG esp-2021r2'
> --disable-__cxa_atexit --enable-cxx-flags=-ffunction-sections
> --disable-libgomp --disable-libmudflap --disable-libmpx
> --disable-libssp --disable-libquadmath --disable-libquadmath-support
> --with-gmp=/builds/idf/crosstool-NG/.build/riscv32-esp-elf/buildtools
> --with-mpfr=/builds/idf/crosstool-NG/.build/riscv32-esp-elf/buildtools
> --with-mpc=/builds/idf/crosstool-NG/.build/riscv32-esp-elf/buildtools
> --with-isl=/builds/idf/crosstool-NG/.build/riscv32-esp-elf/buildtools
> --enable-lto --enable-target-optspace --without-long-double-128
> --disable-nls --enable-multiarch --enable-languages=c,c++
> --disable-libstdcxx-verbose --enable-threads=posix
> --enable-gcov-custom-rtio --enable-libstdcxx-time=yes
> Thread model: posix
> gcc version 8.4.0 (crosstool-NG esp-2021r2)
>
> % ./openocd -v
> Open On-Chip Debugger  v0.10.0-esp32-20210902 (2021-09-02-09:38)
>
>
> 2. FreeBSD has its own ports and packages with various build
> toolchains for almost any target out there. For NuttX you need to
> provide desired toolchain by hand for now but I would like to add this
> to configure / KConfig so it gets auto-configured to use OS defaults
> :-) Some examples with versions below :-)
>
> % pkg search riscv
> riscv-isa-sim-g_20211015       Spike, a RISC-V ISA Simulator
> riscv32-unknown-elf-binutils-2.37_4,1 GNU binary tools
> riscv32-unknown-elf-gcc-11.3.0 GNU Compiler Collection for bare metal
> riscv32 cross-development
> riscv64-binutils-2.37_4,1      GNU binary tools
> riscv64-freebsd-sysroot-a2021.11.09 FreeBSD 13.0-RELEASE riscv64 sysroot
> riscv64-gcc-8.3.0_1            Cross GNU Compiler Collection for riscv64
> riscv64-gcc12-12.1.0           Cross GNU Compiler Collection for riscv64
> riscv64-gcc9-9.5.0             Cross GNU Compiler Collection for riscv64
> riscv64-none-elf-binutils-2.37_4,1 GNU binary tools
> riscv64-none-elf-gcc-11.3.0    GNU Compiler Collection for bare metal
> riscv64 cross-development
> riscv64-rust-bootstrap-1.63.0  Create bootstrap compilers for building 
> lang/rust
> u-boot-qemu-riscv64-2022.04_1  Cross-build das u-boot for model qemu-riscv64
>
>
> % pkg search mips
> dynamips-community-0.2.17      Cisco 1700/2600/3600/3700/7200 Simulator
> edumips64-1.2.10               Free, cross-platform, educational,
> visual MIPS64 CPU simulator
> mips-binutils-2.37_4,1         GNU binary tools
> mips-gcc6-6.5.0_3              Cross GNU Compiler Collection for mips
> mips-gcc9-9.5.0                Cross GNU Compiler Collection for mips
> mips64-binutils-2.37_4,1       GNU binary tools
> mips64-gcc6-6.5.0_3            Cross GNU Compiler Collection for mips64
> mips64-gcc9-9.5.0              Cross GNU Compiler Collection for mips64
> vmips-1.5.1_1                  MIPS R3000 simulator
>
>
> % pkg search arm
> arm-elf-binutils-2.37          GNU binutils for vanilla ARM cross-development
> arm-gnueabi-binutils-2.37_4,1  GNU binary tools
> arm-none-eabi-binutils-2.37_4,1 GNU binary tools
> arm-none-eabi-gcc-11.3.0       GNU Compiler Collection for bare metal
> arm cross-development
> arm-none-eabi-gcc492-4.9.2_5   GNU Compiler Collection for bare metal
> arm cross-development
> arm-none-eabi-newlib-2.4.0_1   Newlib distribution for arm-none-eabi targets
> armv6-freebsd-sysroot-a2021.11.09 FreeBSD 12.2-RELEASE armv6 sysroot
> armv6-gcc12-12.1.0             Cross GNU Compiler Collection for armv6
> armv6-gcc9-9.5.0               Cross GNU Compiler Collection for armv6
> armv6-rust-bootstrap-1.63.0    Create bootstrap compilers for building 
> lang/rust
> armv7-freebsd-sysroot-a2021.11.09 FreeBSD 12.2-RELEASE armv7 sysroot
> armv7-gcc12-12.1.0             Cross GNU Compiler Collection for armv7
> armv7-gcc9-9.5.0               Cross GNU Compiler Collection for armv7
> armv7-rust-bootstrap-1.63.0    Create bootstrap compilers for building 
> lang/rust
> gcc-arm-embedded-10.3.20210921 Complete gcc-based toolcahin for
> embedded ARM development
> u-boot-qemu-arm-2022.04_1      Cross-build das u-boot for model qemu-arm
> u-boot-qemu-arm64-2022.04_1    Cross-build das u-boot for model qemu-arm64
> u-boot-rpi-arm64-2022.04_1     Cross-build das u-boot for model rpi-arm64
>
>
> % pkg search powerpc
> powerpc-binutils-2.37_4,1      GNU binary tools
> powerpc-freebsd-sysroot-a2021.11.09 FreeBSD 13.0-RELEASE powerpc sysroot
> powerpc-gcc12-12.1.0           Cross GNU Compiler Collection for powerpc
> powerpc-gcc9-9.5.0             Cross GNU Compiler Collection for powerpc
> powerpc-rust-bootstrap-1.63.0  Create bootstrap compilers for building 
> lang/rust
> powerpc64-binutils-2.37_4,1    GNU binary tools
> powerpc64-elfv1-freebsd-sysroot-a2021.11.09 FreeBSD 12.2-RELEASE
> powerpc64 elfv1 sysroot
> powerpc64-elfv1-rust-bootstrap-1.63.0 Create bootstrap compilers for
> building lang/rust
> powerpc64-elfv2-freebsd-sysroot-a2021.11.09 FreeBSD 13.0-RELEASE
> powerpc64 elfv2 sysroot
> powerpc64-elfv2-rust-bootstrap-1.63.0 Create bootstrap compilers for
> building lang/rust
> powerpc64-gcc12-12.1.0         Cross GNU Compiler Collection for powerpc64
> powerpc64-gcc6-6.5.0_3         Cross GNU Compiler Collection for powerpc64
> powerpc64-gcc9-9.5.0           Cross GNU Compiler Collection for powerpc64
> powerpc64le-binutils-2.37_4,1  GNU binary tools
> powerpc64le-freebsd-sysroot-a2021.11.09 FreeBSD 13.0-RELEASE powerpc64le 
> sysroot
> powerpc64le-rust-bootstrap-1.63.0 Create bootstrap compilers for
> building lang/rust
>
>
> % pkg search avr
> arduino-avrdude-6.3_4          Program for programming the on-chip
> memory of Atmel AVR Arduino CPUs
> avr-binutils-2.37_4,1          GNU binary tools
> avr-gcc-11.2.0                 FSF GCC for Atmel AVR 8-bit RISC
> cross-development
> avr-gdb-7.3.1_6                GNU GDB for the AVR target
> avr-libc-2.0.0_4,1             C and math library for the Atmel AVR
> controller family
> avra-1.4.2                     Macro Assembler for Atmel AVR microcontrollers
> avrdude-7.0_2                  Program for programming the on-chip
> memory of Atmel AVR CPUs
> simavr-1.7_2                   Simulator for several Atmel AVR chips
>
>
> % pkg search z80
> p5-CPU-Z80-Assembler-2.18      Z80 assembler written in Perl
> z80-asm-2.4.p3                 Z80 assembly code assembler and disassembler
> z80asm-1.8                     Assembler for the Z80 microprocessor
> z80ex-1.1.21                   ZiLOG Z80 CPU emulator library
> z80pack-1.37                   Complete CP/M-80 emulator
>
>
> % pkg search openocd
> openocd-0.11.0_1               Open On-Chip Debugger
>
>
> And many many more :-)
>
> Best regards :-)
> Tomek
>
>
>
> On Sat, Oct 8, 2022 at 2:33 PM Alan C. Assis wrote:
> >
> > Thank you very much Tomek!
> >
> > when you get NuttX compiled on FreeBSD, please run the similar
> > commands like these:
> >
> > $ xtensa-esp32-elf-gcc -v
> > Using built-in specs.
> > COLLECT_GCC=xtensa-esp32-elf-gcc
> > COLLECT_LTO_WRAPPER=/usr/local/bin/../libexec/gcc/xtensa-esp32-elf/8.4.0/lto-wrapper
> > Target: xtensa-esp32-elf
> > Configured with:
> > /builds/idf/crosstool-NG/.build/xtensa-esp32-elf/src/gcc/configure
> > --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu
> > --target=xtensa-esp32-elf
> > --prefix=/builds/idf/crosstool-NG/builds/xtensa-esp32-elf
> > --with-local-prefix=/builds/idf/crosstool-NG/builds/xtensa-esp32-elf/xtensa-esp32-elf
> > --with-headers=/builds/idf/crosstool-NG/builds/xtensa-esp32-elf/xtensa-esp32-elf/include
> > --with-newlib --enable-threads=no --disable-shared
> > --with-pkgversion='crosstool-NG esp-2021r2-patch3'
> > --disable-__cxa_atexit --enable-cxx-flags=-ffunction-sections
> > --disable-libgomp --disable-libmudflap --disable-libmpx
> > --disable-libssp --disable-libquadmath --disable-libquadmath-support
> > --with-gmp=/builds/idf/crosstool-NG/.build/xtensa-esp32-elf/buildtools
> > --with-mpfr=/builds/idf/crosstool-NG/.build/xtensa-esp32-elf/buildtools
> > --with-mpc=/builds/idf/crosstool-NG/.build/xtensa-esp32-elf/buildtools
> > --with-isl=/builds/idf/crosstool-NG/.build/xtensa-esp32-elf/buildtools
> > --enable-lto --enable-target-optspace --without-long-double-128
> > --disable-nls --enable-multiarch --enable-languages=c,c++
> > --disable-libstdcxx-verbose --enable-threads=posix
> > --enable-gcov-custom-rtio --enable-libstdcxx-time=yes
> > Thread model: posix
> > gcc version 8.4.0 (crosstool-NG esp-2021r2-patch3)
> >
> >
> > If you send just the last line above it fine, we only need to know the
> > toolchain version and characteristic.
> >
> > $ xtensa-esp32-elf-size nuttx
> >    text    data     bss     dec     hex filename
> >   75231     320    7736   83287   14557 nuttx
> >
> >
> > BR,
> >
> > Alan
> >
> > On 10/8/22, Tomek CEDRO <to...@cedro.info> wrote:
> > > Hey there Alan :-)
> > >
> > > I am working on FreeBSD / BSD:
> > > 1. kconfig-frontends is now in the FreeBSD ports and packages.
> > > 2. I need to fix the SEDvsGSED issue.
> > > 3. Have some ideas on how to unify MAKEvsGMAKE.
> > > 4. KConfig work to add BSD also needs to be done.
> > > 5. All 2 to 4 would point to GNUvsBSD build tools unification so
> > > things work out of the box on both GNU and BSD in the same way with no
> > > local modifications.
> > >
> > > This is not yet into this release, but lots of other work is done, and
> > > this seems to be a release that others also wait to go out in order to
> > > add their patches.. thus +1 from me not to block the works.. otherwise
> > > no rush from me as things are done when they are done :-)
> > >
> > > Best regards :-)
> > > Tomek
> > >
> > >
> > >
> > >
> > >
> > > On Sat, Oct 8, 2022 at 1:37 PM Alan C. Assis <acas...@gmail.com> wrote:
> > >>
> > >> Hi everyone,
> > >>
> > >> As suggestion when voting for a new release, please send together the
> > >> information about what compiler was used and the output of your
> > >> toolchain "size".
> > >>
> > >> This is just a suggestion, but help us to know that you really tested
> > >> the release and also it is used as reference to know if the size
> > >> increased too much or if there is some discrepancies between different
> > >> toolchains.
> > >>
> > >> Thank you for understanding.
> > >>
> > >> BR,
> > >>
> > >> Alan
> > >>
> > >> On 10/8/22, Tomek CEDRO <to...@cedro.info> wrote:
> > >> > +1 from me :-)
> > >> >
> > >> > --
> > >> > CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
> > >> >
> > >
> > >
> > >
> > > --
> > > CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
> > >
>
>
>
> --
> CeDeROM, SQ7MHZ, http://www.tomek.cedro.info



-- 
CeDeROM, SQ7MHZ, http://www.tomek.cedro.info

Reply via email to