z80 Assembly Documentation Generator
Documentation
The z80 Assembly Documentation Generator was originally written as a tool to aid in the development of the 3rd party
Vera operating system for TI-83/84+ line
of graphing calculators. It reads in any TASM-style (most assemblers used by the TI community use TASM style sourcecode) z80 source code, and generates api documentation from specially formatted doc-comments. Here's an example:
;; Vera - the calc lover's OS,
;; copyright (C) 2007 The Vera Development Team.
;;
;; This file provides control over the keyboard
;
; This program is free software: you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation, either version 3 of the License, or
; (at your option) any later version.
;
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program. If not, see <http://www.gnu.org/licenses/>.
;; === keyboard_init ===
;;
;; Reset the keyboard on OS boot
;;
;; Post:
;; Keyboard routines can safely be called
keyboard_init:
#ifdef VERBOSE_BOOT
ld hl,keyboard_startstr
call console_print
#endif
; Reset keyboard
ld a,$FF
out (KEYBOARD),a
#ifdef VERBOSE_BOOT
ld hl,keyboard_stopstr
call console_print
#endif
ret
Any line preceded by ;; is a doc-comment. Every file and routine may have a description. In addition you may specicy certain attributes in the doc-comment.
The following attributes are supported:
-
;; pre:
allows you to specify pre-conditions for a routine.
-
;; post:
allows you to specify the post-conditions of a routine
-
;; warning:
generates a warning about the behavior of a routine
-
;; seealso:
allows you to provide a list of related routines.
-
;; example:
allows you to provide an example usage for a routine
usage:
Bombadil:vera thomas$ tools/asmdoc/z80asmdoc.py --help
Vera z80 Assembly Documentation Generator
Usage: ./z80asmdoc.py -ttitle -iintropage [-ccssfile]
[-hheader] [-ffooter] asmfile1 [asmfile2[...asmfileN]]
Downloads
Licensing
The source code for this Utlity is licensed under the GNU General Public License v3.
Any example content is licensed under the terms of the Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License