;----------------------------------------------------------------------------
;                          D A T A - S e g m e n t
;----------------------------------------------------------------------------
  DATEN SEGMENT use32 'DATA'
 org 0
;--------------------------------------
PIXTAB DD MaxY+Ausri dup (0) ; Offset table of startadresses of any line of the screen(linear framebuffer)
;----------------------------------------------------------------------------
;                            Position - Table
;----------------------------------------------------------------------------
SX0    DD 122, 197                     ; X, Y
       DD 373, 347
       DD 493, 276
       DD 363, 143
       DD 323, 316
       DD 235, 192
       DD 273, 226
       DD 107, 226
       DD 422, 373
       DD 112, 347
       DD 133, 266
       DD 471, 343
       DD 423, 366
       DD 227, 230
       DD 143, 157
       DD 376, 322
       DD 212, 101
       DD 442, 226
       DD 293, 129
       DD 371, 123
       DD 323, 325
       DD 167, 292
       DD 223, 172
       DD 226, 145
       DD 113, 222
       DD 167, 166
       DD 133, 134
       DD 442, 292
       DD 252, 270
       DD 323, 350
       DD 262, 374
       DD 270, 151
       DD 166, 213
       DD 233, 154
       DD 123, 222
       DD 126, 274
       DD 060, 257
       DD 226, 313
       DD 418, 177
       DD 357, 153
       DD 458, 270
       DD 185, 035
       DD 248, 113
       DD 463, 366
       DD 370, 132
       DD 254, 267
       DD 239, 134
       DD 445, 262
       DD 454, 334
       DD 279, 257
       DD 146, 323
       DD 238, 267
       DD 143, 134
       DD 236, 377
       DD 139, 334
       DD 475, 258
       DD 454, 154
       DD 136, 337
       DD 484, 253
       DD 177, 266
       DD 224, 143
       DD 397, 127
       DD 448, 345
       DD 188, 123
       DD 442, 332
       DD 323, 176
       DD 472, 123
       DD 194, 379
       DD 046, 124
       DD 227, 111
       DD 144, 124
       DD 359, 165
       DD 177, 246
       DD 151, 342
       DD 178, 168
       DD 132, 149
       DD 427, 236
       DD 214, 013
       DD 361, 345
       DD 323, 176
       DD 249, 336
       DD 179, 144
       DD 439, 123
       DD 438, 347
       DD 288, 248
       DD 343, 158
       DD 228, 346
       DD 183, 253
       DD 347, 288
       DD 233, 235
       DD 198, 286
       DD 153, 147
       DD 297, 273
       DD 336, 231
       DD 479, 150
       DD 243, 287
       DD 257, 165
       DD 111, 122
       DD 389, 258
       DD 358, 285
       DD 224, 127
       DD 082, 122
       DD 266, 311
       DD 114, 351
       DD 321, 275
       DD 433, 159
       DD 240, 154
       DD 496, 160
       DD 148, 038
       DD 224, 369
       DD 312, 134
       DD 167, 126
       DD 278, 173
       DD 533, 436
       DD 356, 291
       DD 490, 352
       DD 369, 111
       DD 230, 134
       DD 477, 177
       DD 319, 443
       DD 553, 399
       DD 236, 266
       DD 474, 130
       DD 397, 127
       DD 238, 169
       DD 142, 186
       DD 171, 383
       DD 599, 138
       DD 368, 437
       DD 124, 424
       DD 597, 259
       DD 165, 197
       DD 143, 270
       DD 459, 349
       DD 159, 459
       DD 427, 427
       DD 215, 135
       DD 180, 180
       DD 377, 377
       DD 245, 145
       DD 473, 173
       DD 308, 408
       DD 483, 283
       DD 525, 125
       DD 412, 312
       DD 242, 142
       DD 293, 293
       DD 571, 371
       DD 423, 323
       DD 467, 267
       DD 183, 283
       DD 326, 126
       DD 313, 413
       DD 267, 267
       DD 533, 133
       DD 248, 188
       DD 358, 458
       DD 183, 383
       DD 162, 162
       DD 370, 170
       DD 434, 134
       DD 357, 157
       DD 123, 123
       DD 477, 167
       DD 534, 134
       DD 477, 177
       DD 264, 124
       DD 458, 138
       DD 154, 244
       DD 137, 237
       DD 193, 353
       DD 376, 276
       DD 543, 443
       DD 427, 227
       DD 145, 345
       DD 523, 123
       DD 338, 158
       DD 473, 425
       DD 196, 283
       DD 443, 394
       DD 558, 343
       DD 430, 134
       DD 414, 362
       DD 331, 185
       DD 561, 232
       DD 434, 321
       DD 376, 255
       DD 598, 388
       DD 114, 145
       DD 140, 243
       DD 537, 189
       DD 375, 434
       DD 225, 257
       DD 178, 283
       DD 157, 125
       DD 296, 158
       DD 372, 435
       DD 484, 192
       DD 543, 134
       DD 439, 212
       DD 338, 166
       DD 367, 288
       DD 133, 143
       DD 196, 313
       DD 429, 124
       DD 122, 448
       DD 585, 127
       DD 145, 173
       DD 534, 134
       DD 157, 157
       DD 323, 323
       DD 177, 167
       DD 134, 134
       DD 277, 177
       DD 164, 134
       DD 558, 358
       DD 254, 154
       DD 287, 137
       DD 493, 153
       DD 476, 376
       DD 243, 143
       DD 527, 127
       DD 445, 245
       DD 123, 223
       DD 138, 258
       DD 373, 225
       DD 396, 383
       DD 143, 194
       DD 258, 443
       DD 330, 134
       DD 414, 262
       DD 531, 185
       DD 361, 132
       DD 334, 121
       DD 476, 155
       DD 198, 288
       DD 114, 145
       DD 240, 343
       DD 137, 389
       DD 275, 134
       DD 525, 157
       DD 478, 183
       DD 557, 325
       DD 296, 258
       DD 572, 135
       DD 484, 192
       DD 343, 134
       DD 239, 212
       DD 138, 266
       DD 467, 388
       DD 233, 143
       DD 196, 313
       DD 529, 174
       DD 422, 148
       DD 385, 157
       DD 245, 173
;---------------------------------------------------------------------------
;                              Stepper - Table
;---------------------------------------------------------------------------
STEP0X DD 1, 1                  ; Number of Pixel for movement in horizontal
       DD 1, 2                  ;  and vertical direction (Step X,Y)
       DD 2, 1 
       DD 2, 4 
       DD 3, 1 
       DD 6, 6 
       DD 7, 5 
       DD 8, 4 
       DD 9, 3
       DD 2, 8
       DD 1, 6
       DD 5, 2
       DD 1, 3 
       DD 2, 4 
       DD 3, 5 
       DD 4, 6 
       DD 8, 1 
       DD 1, 2 
       DD 8, 3 
       DD 1, 9 
       DD 9, 1 
       DD 2, 2 
       DD 2, 3 
       DD 2, 7 
       DD 6, 1 
       DD 8, 8 
       DD 3, 3 
       DD 7, 7 
       DD 4, 1 
       DD 2, 7 
       DD 4, 3 
       DD 4, 2 
       DD 1, 1 
       DD 1, 2 
       DD 1, 3 
       DD 2, 3 
       DD 2, 1 
       DD 2, 2 
       DD 2, 2 
       DD 2, 1 
       DD 3, 1 
       DD 6, 2 
       DD 3, 3 
       DD 3, 3 
       DD 4, 1 
       DD 2, 2 
       DD 4, 3 
       DD 4, 6 
       DD 1, 1 
       DD 1, 2 
       DD 1, 2 
       DD 1, 4 
       DD 2, 1 
       DD 2, 2 
       DD 3, 3 
       DD 2, 4 
       DD 3, 1 
       DD 3, 3 
       DD 3, 2 
       DD 3, 1 
       DD 4, 5 
       DD 2, 2 
       DD 4, 3 
       DD 1, 2 
       DD 3, 1 
       DD 1, 2 
       DD 1, 3 
       DD 2, 4 
       DD 2, 1 
       DD 2, 2 
       DD 2, 3 
       DD 2, 4 
       DD 3, 1 
       DD 3, 2 
       DD 3, 3 
       DD 3, 4 
       DD 4, 1 
       DD 3, 2 
       DD 4, 3 
       DD 2, 2 
       DD 1, 1 
       DD 1, 2 
       DD 1, 3 
       DD 1, 2 
       DD 2, 1 
       DD 1, 2 
       DD 2, 3 
       DD 2, 2 
       DD 1, 1 
       DD 3, 2 
       DD 3, 3 
       DD 1, 1 
       DD 2, 1 
       DD 3, 2 
       DD 1, 3 
       DD 1, 2 
       DD 1, 1 
       DD 1, 2 
       DD 1, 3 
       DD 1, 3 
       DD 3, 1 
       DD 2, 2 
       DD 2, 1 
       DD 2, 1 
       DD 5, 1 
       DD 3, 2 
       DD 3, 3 
       DD 3, 1 
       DD 3, 1 
       DD 3, 2 
       DD 2, 3 
       DD 4, 1 
       DD 1, 1 
       DD 1, 2 
       DD 1, 3 
       DD 3, 4 
       DD 2, 1 
       DD 1, 5 
       DD 2, 3 
       DD 2, 4 
       DD 3, 1 
       DD 3, 2 
       DD 1, 3 
       DD 2, 3 
       DD 3, 1 
       DD 1, 2 
       DD 1, 3 
       DD 2, 1 
       DD 1, 1 
       DD 1, 1 
       DD 1, 3 
       DD 1, 2 
       DD 2, 1 
       DD 2, 2 
       DD 2, 3 
       DD 2, 3 
       DD 1, 1 
       DD 3, 2 
       DD 3, 3 
       DD 3, 3 
       DD 1, 1 
       DD 4, 1 
       DD 4, 3 
       DD 4, 2 
       DD 3, 1 
       DD 1, 2 
       DD 1, 3 
       DD 1, 3 
       DD 2, 1 
       DD 2, 2 
       DD 5, 3 
       DD 2, 1 
       DD 3, 1 
       DD 3, 2 
       DD 3, 3 
       DD 5, 3 
       DD 4, 1 
       DD 5, 2 
       DD 4, 1 
       DD 1, 2 
       DD 1, 1 
       DD 1, 5 
       DD 1, 3 
       DD 1, 3 
       DD 2, 1 
       DD 2, 2 
       DD 5, 1 
       DD 1, 4 
       DD 1, 1 
       DD 5, 2 
       DD 3, 5 
       DD 3, 4 
       DD 4, 1 
       DD 1, 2 
       DD 4, 3 
       DD 3, 5 
       DD 1, 1 
       DD 1, 1 
       DD 3, 3 
       DD 1, 4 
       DD 2, 3 
       DD 2, 1 
       DD 2, 3 
       DD 2, 4 
       DD 3, 1 
       DD 3, 2 
       DD 5, 3 
       DD 3, 1 
       DD 1, 3 
       DD 3, 5 
       DD 4, 3 
       DD 1, 2 
       DD 1, 1 
       DD 1, 2 
       DD 1, 3 
       DD 1, 4 
       DD 2, 1 
       DD 5, 1 
       DD 2, 3 
       DD 3, 4 
       DD 3, 3 
       DD 1, 2 
       DD 3, 3 
       DD 3, 4 
       DD 4, 1 
       DD 3, 2 
       DD 1, 3 
       DD 2, 4 
       DD 1, 5 
       DD 1, 2 
       DD 5, 3 
       DD 1, 2 
       DD 2, 1 
       DD 2, 2 
       DD 2, 5 
       DD 2, 3 
       DD 3, 1 
       DD 3, 3 
       DD 3, 3 
       DD 3, 1 
       DD 2, 1 
       DD 3, 5 
       DD 2, 3 
       DD 4, 2 
       DD 1, 1 
       DD 3, 1 
       DD 1, 3 
       DD 1, 3 
       DD 2, 1 
       DD 5, 2 
       DD 2, 3 
       DD 2, 1 
       DD 3, 3 
       DD 3, 2 
       DD 3, 3 
       DD 3, 3 
       DD 5, 1 
       DD 1, 2 
       DD 2, 3 
       DD 4, 2 
       DD 1, 1 
       DD 1, 2 
       DD 1, 3 
       DD 1, 4 
       DD 2, 1 
       DD 5, 2 
       DD 2, 3 
       DD 2, 4 
       DD 3, 1 
       DD 3, 2 
       DD 3, 5 
       DD 2, 1 
       DD 3, 1 
       DD 2, 2 
       DD 1, 3 
       DD 2, 2 
;----------------------
S_Len = ($-STEP0X)
;--------------------------------------
; Table of direction-flags for movement
;--------------------------------------
W0     DB (Anzahl+1)* 8 DUP(0)         ; plus(0) / minus(1) für X,Y
;--------------------------------------
BALL   DB 0CC00h dup (22h)             ; Sprite-Table: Offset32, Farbe32
;--------------------------------------
PICAKT DD MaxX*4*MaxY                  ; Actual adress of the framebuffer
PICLEN DD MaxX*4*MaxY                  ; Screen lenght
PICMAX DD MaxX*4*MaxY*2                ; Max adress
;--------------------------------------
RETTSI DW 0, 0                         ; I don´t like to push the SI-register on the stack
;--------------------------------------
HINFAR DD HFarb, HFarb                 ; Background Color
;--------------------------------------
;            C i r c l e
;--------------------------------------
Y      DD 0                            ; Double-Word for FPU: sqr
XM     DD 0                            ; X Position
YM     DD 0                            ; Y Position
COL    DD 0                            ; Color
XMAX   DW 0, 0
YMAX   DW 0, 0
;--------------------------------------
EDID   DB 80h dup (55h)                ; Buffer for DDC-Monitor-Info
;--------------------------------------
VINF   DB 512 dup (0AAh)               ; Buffer for Vesa-Info(4F00h)
MINF   DB 256 dup (044h)               ; Buffer for Mode Info(4F01h)
;--------------------------------------
CRTC    DW 1456                        ; Horizontal Total       in Pixel
HORIANF DW 1122                        ; Horizontal  Sync-Start in Pixel
HORIEND DW 216                         ; Horizontal  Sync-End   in Pixel
VERTOTA DW 814                         ; Vertical   Total       in Lines
VERTANF DW 768                         ; Vertical    Sync-Start in Lines
VERTEND DW 42                          ; Vertical    Sync-End   in Lines
DOIFLAG DB 04h                         ; Flag (interlaced,doubleScan,polarity)
PIXCLOC DD 118309000                   ; Pixel clock in hz
REFRATE DW 10000                       ; Refresh-Rate in 0.01 hz
;---------------------
        DB 40 dup (0)
;--------------------------------------
FLAG    DB 0                           ; Used for triple buffering adress switching
;--------------------------------------
ERTEX1 DB Cr, Lf, "No Video-Mode", Cr, Lf, "$"
ERTEX2 DB Cr, Lf, "No lineare offset", Cr, Lf, "$"
ERTEX3 DB Cr, Lf, "No MMX-CPU", Cr, Lf, "$"
ERTEX4 DB Cr, Lf, "No Vesa-Bios", Cr, Lf, "$"
ERTEX5 DB Cr, Lf, "No VESA 3 -Bios", Cr, Lf, "$"
ERTEX6 DB Cr, Lf, "No DDC", Cr, Lf, "$"
ERTEX7 DB Cr, Lf, "Less than 96 khz", Cr, Lf, "$"
ERTEX8 DB Cr, Lf, "Less than 160 hz", Cr, Lf, "$"
ERTEX9 DB Cr, Lf, "No pixelcloc", Cr, Lf, "$"
;--------------------------------------
  DATEN ends
;----------------------------------------------------------------------------
 STAPEL SEGMENT use16 STACK 'STACK'
       DB 10h dup (0)
 STAPEL ends
;----------------------------------------------------------------------------
 end
Dirk