Z80 Assembly, 37 byte kode mesin
Asumsikan memori yang dipetakan perangkat I / O:
; JANGAN INPUT A SPACE atau itu akan masuk ke ruang pencetakan & baris baru tanpa batas!
3A xx xx ld a, (input); dapatkan karakter input
11 0A 20 ld de, 200ah; ruang & baris baru
21 yy yy ld hl, output; dapatkan alamat keluaran
4F ld c, a; masukkan karakter ke dalam c
lingkaran:
72 ld (hl), d; ruang output * 2 | karakter keluaran * 2
72 ld (hl), d
77 ld (hl), a; karakter keluaran | karakter keluaran
71 ld (hl), c; karakter keluaran * 2 | ruang output * 2
71 ld (hl), c
77 ld (hl), a; karakter keluaran | karakter keluaran
73 ld (hl), e; keluaran baris baru | output baris baru
72 ld (hl), d; ruang keluaran | karakter keluaran
71 ld (hl), c; karakter keluaran | ruang output
72 ld (hl), d; ruang keluaran | karakter keluaran
71 ld (hl), c; karakter keluaran | ruang output
72 ld (hl), d; ruang keluaran | karakter keluaran
B9 cp c; atur zero flag 1st time | jelas waktu ke-2
20 06 jr nz, akhir; lompat ke ujung
77 ld (hl), a; karakter keluaran
73 ld (hl), e; output baris baru
4A ld c, d; menempatkan ruang dalam c
57 ld d, a; masukkan karakter ke dalam d
28 FB jr z, loop; loop ke waktu ke-2
akhir:
73 ld (hl), e; output baris baru
77 ld (hl), a; karakter keluaran * 4
77 ld (hl), a
77 ld (hl), a
77 ld (hl), a
76 berhenti; atau ret C9