Updated VC4 docs.
authorDavid Given <dg@cowlark.com>
Fri, 21 Jun 2013 22:21:08 +0000 (23:21 +0100)
committerDavid Given <dg@cowlark.com>
Fri, 21 Jun 2013 22:21:08 +0000 (23:21 +0100)
--HG--
branch : dtrg-videocore

man/vc4_as.6 [new file with mode: 0644]
plat/rpi/README

diff --git a/man/vc4_as.6 b/man/vc4_as.6
new file mode 100644 (file)
index 0000000..81b1081
--- /dev/null
@@ -0,0 +1,45 @@
+.\" $Header$
+.TH VC4_AS 1
+.ad
+.SH NAME
+vc4_as \- assembler for Broadcom VideoCore IV
+
+.SH SYNOPSIS
+/usr/em/lib/vc4_as [options] argument ...
+
+.SH DESCRIPTION
+This assembler is made with the general framework
+described in \fIuni_ass\fP(6).
+
+.SH SYNTAX
+The assembler uses a modified version of the syntax described in
+https://github.com/hermanhermitage/videocoreiv/wiki/VideoCore-IV-Programmers-Manual:
+condition codes must be prefixed with a full stop. Vector instructions are not
+yet supported.
+
+.SH "SEE ALSO"
+uni_ass(6),
+ack(1),
+.br
+https://github.com/hermanhermitage/videocoreiv
+.SH EXAMPLE
+.nf
+.ta 8n 16n 24n 32n 40n 48n
+An example of VideoCore IV assembly language:
+
+        ldb r0, __uart_status
+        b.eq r0, #0, 1b
+
+        ! receive 1 byte (returned in r0)
+        mov r1, #AUX_MU_LSR_REG
+        mov r2, #AUX_MU_IO_REG
+        ! loop until char available
+recvwait:
+        ld r3, (r1)
+        and r3, #0x1
+        b.ne r3, #0x1, recvwait
+
+        ldb r0, (r2)
+1:
+        b lr
+.fi
index f883672..7d78433 100644 (file)
@@ -5,6 +5,9 @@ This is a fairly crude port of the ACK to produce VideoCore IV machine
 code, suitable for use on the Raspberry Pi. It produces terrible but
 working code. The resulting binaries can be used either bare metal or
 loaded as a GPU kernel and executed using a modified mailbox.c (see below).
+Currently floating point support is present but incomplete; and as the
+VideoCore IV does not have double-precision float support, the C compiler
+treats doubles as single precision.
 
 As much of the standard C library as is relevant works; if
 you're running in bare-metal mode, you can hook stdin/stdout up to the