Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Is there anything quite tied/geared to the internals of the system for rasp pi in the same manner as say C64 Basic was? Or does that sort of concern not really matter for today’s CPUs/hardware/aarch?

I’m not really a programmer. The reason I ask is for my 11 yr old to hack around, should I find/use a modern (or if not modern, updated, as you indicated BBC is) Basic like the one you linked, or should I have the kid just do cool stuff and basic stuff inside a C64 emulator on the Pi such as Combian64 etc?



Somebody else brought it up in a separate comment, but because you specifically ask about the Raspberry, I'll mention EndBASIC (https://www.endbasic.dev/) here again :)

Supporting this platform is an ideal goal of the project, and in fact, one of the features (GPIO) only works on the Raspberry Pi today :) But there is a long road ahead to fulfill the promise. My vision is to create a minimal Linux image that boots straight into EndBASIC, and extend EndBASIC to give you more control of the Pi's hardware. The idea is to truly mimic the old C64 experience, but leveraging the power of modern hardware / infrastructure.


Sounds awesome, that would be super cool! I’ll check out endbasic as it is currently which should suffice quite nicely as is for the environment I’m looking for..


It's not exactly what you're asking, but a few years ago I revisited the Spectrum programming of my youth in an emulator using modern editors and assemblers etc outside the emulated hardware. The emulator could pause and trace all the memory locations live which made debugging great.

It was a way easier, more fun and productive experience than doing it for real on an 8bit machine was back in the day.


I understand that "ARM BASIC V" was embedded in the Archimedes in ROM.

If an ARM processor still supports the original 32-bit instruction set, then (I understand) that this version should run on it, to the point of this being an important compatibility test for alternate implementations of the instruction set.

Here is some discussion on ARM BASIC V:

https://forums.raspberrypi.com/viewtopic.php?t=61365

This basic version would have been embedded in the original "Arthur OS" that shipped on the Archimedes, and later versions of (modern) RISC OS.

https://en.wikipedia.org/wiki/RISC_OS


> Is there anything quite tied/geared to the internals of the system for rasp pi in the same manner as say C64 Basic was? Or does that sort of concern not really matter for today’s CPUs/hardware/aarch?

The "Lite" version of RpiOS is probably the closest you'll get. It just boots to the command line. Of course you could use any version of RpiOS and disable boot to GUI in raspi-config to get a similar effect.


If you want a BASIC that's close to the metal, forget Linux. Nothing on Linux is close to the metal.

RISC OS is what you want. It includes BBC BASIC V built in and it's probably the fastest interpreted BASIC of all time.

No SMP support but no BASIC ever had that. No wifi either. Ethernet works great, though.

https://www.riscosdev.com/direct/


Looks cool ty! The BASIC doesn’t support wifi or the OS itself also?


RISC OS doesn't support Wifi or >1 CPU, and it is a 32-bit OS with no 64-bit support (yet).

It's the original native OS for the ARM family, designed by some of the same team who designed the ARM processor at Acorn Computers.

It's FOSS now and has been modernized a lot, but at the core, this is a multitasking GUI OS hand-coded in Arm assembly language by a team of about 6 people -- most of whom I interviewed a year or so back:

https://www.youtube.com/watch?v=P_SDL0IwbCc

In 1987 it originally fit entirely into and ran from 512KB of ROM on the Archimedes computer, and ran in 512KB of RAM. The later RISC OS 3 needed 2MB of ROM.

Even now, the core OS fits into about 6MB. That's not the kernel, that's the whole OS, filesystem, GUI, network stack etc.

It is a late-1980s OS, older than Windows 2.0, or MS-DOS 5.0, or NeXTstep. It is almost incomprehensibly tiny by modern standards.


It's a really hard question. The program is not anywhere as close to the hardware as the original would have been, but is it the right place to start? I think you may want to offer a variety of things and see which is the most interesting.

Personally I'd love to have a nice 386 with some hardware to play around with, but then again, that's what I learned on.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: