Intel MCS BASIC-52
interactive RTOS shell port project

First posted
Saturday May 26, 2018 12:43
Updated
Wednesday May 30, 2018 12:57

Task
REQUEST FOR PROPOSAL

PORT Intel MCS BASIC-52
Interactive RTOS shell
to Cypress PSoC 6 BLE Pioneer Kit

                              Update: 5/28/18 08:46

1 Write interpreted syntax-checking ARM m4 assembler in Intel MCS BASIC-52.

Input: Single instruction buffer or file contains text examples of all m4
instruction set operands. Include FP instructions.

Example operands:
8 bits 01
16 bits 0123
32 bits 01234567
64 bits 012345789ABCDEF
Tokenize [ 0, 1, 2, ...] symbolic opcode with linear search.

Push operands, if any, on to operand stack.

Assemble single instruction interactively with jump to instruction assembly
module [subroutine].

View in binary or hex in output window.

Interactive debug one instruction at a time.

Debug global symbolic and local lables [$1: - $1, $2: - $2, ...] with batch
input test file.

Output: window, binary file.

Write Visual BASIC .NET interactive emulator of Intel MCS BASIC-52 features.

Use interactive emulator to debug assembler in Visual Studio.

   
2 Write ARM m4 disassembler in Windows 10 Visual BASIC .NET.

Input: single opcode + operands or m4 binary source.

Tokenize opcode [0, 1, 2, ...] with linear search.

Invoke instruction module. Recover operands.

Debug each opcode disassembly interactively.

Then debug multiple instructions lines batch.

Output: Instruction disassembly window. Text source file.

Allow single step for batch file disassembly.

   
3 Write syntax-checking ARM m0+ assembler in Intel MCS BASIC-52.

Input: Single instruction or file containing examples of all m0+ instruction operands.

Example operands:
8 bits 01
16 bits 0123
32 bits 01234567
64 bits 012345789ABCDEF
Output file: binary .txt

Write Visual BASIC .NET interactive emulator of Intel MCS BASIC-52 features.

Use toto debug assembler in Visual Studio.

Input: Single instruction buffer or file contains text examples of
all m4 instruction set operands. Include FP instructions.

Example operands:
8 bits 01
16 bits 0123
32 bits 01234567
64 bits 012345789ABCDEF
Tokenize [ 0, 1, 2, ...] opcodes with linear search.

Push discovered operands, if any, on to operand stack.

Assemble single instruction interactively with jump to instruction assembly
module [subroutine].

View in binary or hex in output window.

   
4 Write ARM m0+ disassembler in Windows 10 Visual BASIC .NET.

Input: single opcode + operands or m0+ binary source.

Tokenize opcode [0, 1, 2, ...] with linear search.

Invoke instruction module. Recover operands.

Debug each opcode disassembly interactively.

Then debug multiple instructions batch.

Output: Instruction disassembly window. Text source file.

Allow single step for batch file disassembly.

   
5 Write Intel MCS BASIC-52 emulator in Visual Studio Visual BASIC .NET .
 
   
6 Port Intel MCS BASIC-52 to m4 core [BASIC-P6M4] using using modules
written in m4 assembler similar to modules written by John Katausky in 8051 assembler.

Use MCS BASIC-52 stack structures: control stack, argument stack, internal stack.

Implement MCS BASIC-52 line editor.

Use Intel MCS BASIC-52 windows 10 emulator to debug.

   
7 Port BASIC-P6M4 to m0+ core.

   
Revision History      
REV
SYM 
Reason Author Date/
Time 
0 Formal release. whp 5/18/18
14:59
Notes

Wednesday May 30, 2018 12:57

Interactive RTOS video.

Core i5 runs hot.
Appears to run cooler.

 


Monday May 28, 2018 18:46

____


Contract progamming.



8 gen core i7 win 10/1803 interactive RTOS shell multitasking.


Intel MCS BASIC-52 is an interactive RTOS shell..

Intel employee John Katausky wrote BASIC-52 and a floating point extension in assembler.

Katausky promoted to VP for this work, late Mark Thompson reported.

Thompson supplied 5-1/4 disk containing assember source code of BASIC-52.

Forth is an interactive RTOS shell too.

Original figforth 8080 programmers wrote the 8080 assembler in high level forth.

Nautilis 1 metacompiler generated 8080 binary target from source code cross complied on a IBM PC.

Clear advantage over implementing forth in assembler.

Can ARM 4 and 0+ core assemblers be written in high level Intel MCS BASIC-52?

If so, then it should be possible to generate PSoC 6 BLE interactive BASIC RTOS shell from source.

RTOS shell would then contain an interactive/batch incremental compler/assembler. And would be extensible by adding new constructs in high level BASIC or assembler.


Interactive or batch?

Real or virtual machine software technology?

Interactive RTOSs/OSs require command interpreter[s].

Microsoft Windows command line
interpreters
(shells) such as COMMAND.COM ,
cmd.exe , 4DOS, 4NT and Windows PowerShell.


[Wrote FORTH51 command line interpreters ENCLOSE and -FIND in 8051
assembler
. And the syntax checking 8051 assembler too.

Sandia labs job assignment.]

Project manager