diff --git a/docs/buzbee.pdf b/docs/buzbee.pdf new file mode 100644 index 0000000..ada463c Binary files /dev/null and b/docs/buzbee.pdf differ diff --git a/docs/buzbee.typ b/docs/buzbee.typ new file mode 100644 index 0000000..7737bf7 --- /dev/null +++ b/docs/buzbee.typ @@ -0,0 +1,36 @@ +#set document( + title: "BUZBEE Manual", + author: "Gale Faraday", + description: "CHIBI PC-09 machine language monitor BUZBEE technical and user manual", +) + +#import "style.typ": conf +#show: conf.with( + title: [BUZBEE User Manual and Technical Reference], + subtitle: [A CHIBI PC-09 Machine Language Monitor], + author: [Gale Faraday], +) + += Introduction +#lorem(120) +#pagebreak() + += BUZBEE Functions +#lorem(120) +#pagebreak() + +== Internal Functions (IFs) +#lorem(120) +#pagebreak() + +== External Functions (EFs) & User Programs +#lorem(120) +#pagebreak() + += BUZBEE Reserved Memory Regions +#lorem(120) +#pagebreak() + += Building BUZBEE +#lorem(120) + diff --git a/docs/style.typ b/docs/style.typ new file mode 100644 index 0000000..933cc82 --- /dev/null +++ b/docs/style.typ @@ -0,0 +1,58 @@ +// Style conf function for CHIBI PC-09 projects +#let conf( + title: none, + subtitle: none, + author: none, + doc, +) = { + + // Global page format + set page( + paper: "us-letter", + header: align(right, text(9pt, weight: "light")[#title]), + numbering: "1", + ) + + // Font settings + set text( + font: "New Computer Modern", + size: 12pt, + ) + + // Default paragraph settings + set par( + justify: true, + first-line-indent: 1cm, + ) + + // Heading numbering + set heading(numbering: "1.1") + + // Title page and TOC + page(header: none, footer: none)[ + // Emit title and subtitle page + #block(height: 60%)[ + #align(center + horizon, + block(text(22pt)[#title]) + + block(above: 2em)[#smallcaps[#subtitle]] + ) + ] + // Emit TOC + #pagebreak() + #outline() + #pagebreak() + ] + + // Heading formatting for doc, must come after title page and TOC + show heading: it => [ + CHAPTER + #counter(heading).display() + #it.body + ] + + // Emit doc + counter(page).update(1) // Reset counter for first real page + set align(left) + doc +} +