Quantcast
Channel: Planet Python
Viewing all articles
Browse latest Browse all 23495

Paolo Amoroso: Suite8080 0.5.0

$
0
0

Version 0.5.0 of Suite8080 is out, and the package is available on PyPI. Suite8080 is a suite of Intel 8080 Assembly cross-development tools I’m writing in Python.

Assembly source of the Suite8080 hello world demo
The Assembly source of the Suite8080 hello world demo with uppercase constants.

The new release is all about expressiveness. I extended the assembler to accept uppercase identifiers for instruction mnemonics, labels, and constants. The change allows an Assembly coding style in which constants are in all uppercase and stand out. For example, here’s the Suite8080 hello world demo greet.asm with constants such as TPA and BDOS:

; Hello world for CP/M


TPA equ 100h
BDOS equ 0005h ; BDOS entry point
WSTRF equ 09h ; BDOS function: write string

org TPA

mvi c, WSTRF
lxi d, message
call BDOS
ret

message: db 'Greetings from Suite8080$'

end

I reformatted in this style also the other Assembly demos.

Named constants improve expressiveness by helping clarify the intent of code. So the ds and org directives may now take identifiers as operands, possibly in uppercase, which must be defined before use.

Although implementing these features required some thought, the changes to the Python code were relatively simple and short. I’m happy because these limited changes have a major impact on the way I can use Suite8080 to develop Intel 8080 code.

Documentation is a dimension of expressivity and I’m writing a lot for Suite8080. In this new version, I published the Suite8080 documentation as a separate website. It’s an opportunity to experiment with publishing Python documentation to Read The Docs with Jupyter Book.


Viewing all articles
Browse latest Browse all 23495

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>