sdcc
SDCCでテストプログラムを書いてみる.
まずは Hello World
/*
#include "io.h"
void main(void) { |
io.c
#include <stdio.h>
char getchar(void) {
void putchar(char c) {
void exit(char c) __naked { |
pm2_cin(),pm2_cout()はPaulmon2への入出力サブルーチンへのインタフェースが記述されたpaulmon2.cで定義されている.
paulmon2.c, paulmon2.h は親切な人が公開しているのでぐぐると見つかる
コンパイル
#sdcc -mmcs51 --model-small --code-loc 0x8000 hello.c io.rel paulmon2.rel |
実行結果
九九の表
printf_fast() は %3d のように出力幅を指定できるが %02x のように0で埋めることができない. printf_small() はその逆らしい.「帯に短したすきに長し」
EZ-USBで遊んでいたころにsdccを使っていた.
EZ-USBはCODE領域が2kしかないので,printf_tiny()しか使えずソースコードに手を入れて %02x がちゃんと出力されるようにして使っていた.
8031SBCはcode領域が32kとれるのでとっても楽である.
「8031/8052 SBC」カテゴリの記事
- 久々の物欲(2022.05.21)
- STC12C2052(2) <8Queen問題>(2017.10.08)
- 8052BASIC(6)(2012.11.11)
- 8052BASIC(4)(2012.10.18)
- 8052BASIC(5)(2012.11.03)
「プログラミング」カテゴリの記事
- GMC-4で動く3連ナイトライダー(2022.12.30)
- プログラミング言語ランキング(2022.11.19)
- AWSでサービス構築(2022.05.29)
- Excelの配列式(2022.01.06)
- ローコード・プログラミング(2021.11.07)
コメント