PDP-11(エミュ)上で動く、短いHello WorldのCのプログラムを書いてみた。 短いとはいえ、無理に一個関数とかにしない。普通のリーダブルコードとして書く。 ソースコード #define KL11_TTY_REG_ADDRESS 0177564; #define TXRDY (1<<7) static volatile struct kl11_tty { int out_csr; int out_dbr; } *pkl11 = (struct kl11_tty*)KL11_TTY_REG_ADDRESS; int putchar(int c) { while(!(pkl11->out_csr & TXRDY)) ; pkl11->out_dbr = c; } int puts(unsigned char *s) { while(*s) putchar(*s++); return
![PDP-11(エミュ)上でCで"Hello, World!" - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/3c068270f181290afce7e8a39773582e078dfcf0/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9UERQLTExJTI4JUUzJTgyJUE4JUUzJTgzJTlGJUUzJTgzJUE1JUVGJUJDJTg5JUU0JUI4JThBJUUzJTgxJUE3QyVFMyU4MSVBNyUyMkhlbGxvJTJDJTIwV29ybGQlMjElMjImdHh0LWFsaWduPWxlZnQlMkN0b3AmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZzPTkxOWIyOGUwNTNiYWVjNjdmYWZmMmJlMDNjMWQwNWY2%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBoaWZpc3RhciZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NGM4Y2E2ZTg5YTcyOTUzNjU2MWNiNWI2MGQ0Y2M3N2Y%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3Dc97812a3a4ff64c5d51312568f2a6ea7)