Hacker News new | ask | show | jobs
by that_jojo 2348 days ago
I love, love, love Ben's videos, and this is an awesome project.

But to be as painfully pedantic as possible: can we please use the word 'monitor', here? Calling it a 'microkernel' really gives one the wrong initial impression.

Still, very neat. Now write a BASIC!

2 comments

> Now write a BASIC!

No doubt an educational project. However, all the versions of Microsoft 6502 BASIC were collected and annotated by a Michael Steil in 2008.

Docs: https://www.pagetable.com/?p=46

Source: https://github.com/mist64/msbasic

Thanks for sharing this! I learned how to write floating point math routines from scratch by disassembling the ROMs on my PET and figuring out how they worked.

Nice to see the coefficients for the taylor series computation for sin() in the POLY_SIN table.

What does "monitor" mean in this context? Makes me think of either a display or https://en.wikipedia.org/wiki/Monitor_(synchronization) .
I learnt assembly language programming on a Vic20 in 1983, using this Vicmon machine code monitor:

http://commodore.software/downloads/download/211-application...

I like this explanation of "monitor", from https://www.atarimagazines.com/creative/v9n12/272_A_monitor_...

"The novice machine language programmer often does not have an assembler. Without an assembler, the programmer must assemble the program by hand, and then enter it by hand. Even a small program could require hundreds of POKEs followed by hundreds of PEEKs to verify that everything has been entered correctly.

A good monitor gets around these problems. It allows the programmer to examine memory locations sequentially. As each location is examined, the operator has the option of changing it or looking at the next one. A good monitor program also allows the operator to list a range of memory all at once. A third monitor feature allows the operator to move a range of memory to a new location in the computer. A final feature in a good monitor is the ability to execute and return from a machine language program."

I seem to recall from my C64 days that "monitor" was a term for a type of utility program that would let you view memory contents and load data into memory. That seems to be similar to what this project is doing.
Monitor was the name given to lighweight OSes back in the day.

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

I think this explanation works quite well: https://www.c64-wiki.com/wiki/Machine_Code_Monitor