aboutsummaryrefslogtreecommitdiff
path: root/doc/sped-3.txt
blob: 3b4e196c81f8957de43756bfcdc3e3f9efb8605c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103



                                      .!.
                                     !!!!!. 
                                  .   '!!!!!. 
                                .!!!.   '!!!!!.
                              .!!!!!!!.   '!!!!!.
                            .!!!!!!!!!'   .!!!!!!!.
                            '!!!!!!!'   .!!!!!!!!!'
                              '!!!!!.   '!!!!!!!' 
                                '!!!!!.   '!!!'
                                  '!!!!!.   '
                                    '!!!!! 
                                      '!'   


                          M A C K A P A R    M E D I A                          






    .---------------------.
----! DCPU-16 INFORMATION !----------------------------------------------------- 
    '---------------------' 

Name: Mackapar Suspended Particle Exciter Display, Rev 3 (SPED-3) 
ID: 0x42babf3c, version: 0x0003
Manufactorer: 0x1eb37e91 (MACKAPAR)



    .-------------.
----! DESCRIPTION !------------------------------------------------------------- 
    '-------------'

The Mackapar Suspended Particle Exciter Display, Rev 3 ("the device") is a 3D
vector display unit. Straight lines are drawn between consecutive vertices in a
constant loop, with customizable colors per vertex. The effect is similar to a
free floating 3D model.
The area of the projected model is about 1x1x1 meters, and projection occurs
1.5 meters above the device.
The emitters are capable to rotate at 50 degrees per second, allowing for easy
animation of projected models.
Up to 65535 lines may be projected, but severe flickering occurs if more than
100 lines are projected.  



    .--------------------.
----! INTERRUPT BEHAVIOR !------------------------------------------------------
    '--------------------'
    
A, B, C, X, Y, Z, I, J below refer to the registers on the DCPU
    
A: Behavior:

0  Poll device. Sets B to the current state (see below) and C to the last error
   since the last device poll.
   
1  Map region. Sets the memory map offset to X, and the total number of vertices
   to render to Y. See below for the encoding information.

2  Rotate device. Sets the target rotation for the device to X%360 degrees.



    .-----------------.
----! VERTEX ENCODING !---------------------------------------------------------
    '-----------------'
  
Each vertex occupies one word of information in the main DCPU RAM. Each word
is encoded as (in LSB-0 format):
   CZZZZZYYYYYXXXXX
Where XXXXX is the X-coordinate of the vertex, YYYYY is the Y-coordinate, ZZZZZ
is the Z-coordinate, and C is color, where 0 is green and 1 is red. 



    .-------------.
----! STATE CODES !-------------------------------------------------------------
    '-------------'
  
0x0000 STATE_NO_DATA    No vertices queued up, device is in stand-by   
0x0001 STATE_RUNNING    The device is projecting lines
0x0002 STATE_TURNING    The device is projecting lines and turning



    .-------------.
----! ERROR CODES !-------------------------------------------------------------
    '-------------'
    
0x0000 ERROR_NONE       There's been no error since the last poll.
0xffff ERROR_BROKEN     There's been some major software or hardware problem,
                        try turning off and turning on the device again.



   COPYRIGHT 1988 MACKAPAR MEDIA    ALL RIGHTS RESERVED    DO NOT DISTRIBUTE