Subversion Repositories Kolibri OS

Rev

Rev 8725 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
8725 rgimad 1
;=========================================
2
; initialized data
3
        include_debug_strings ; for debug-fdo
4
 
5
        chip8_fontset db  \
6
            0xF0, 0x90, 0x90, 0x90, 0xF0, \  ; 0
7
            0x20, 0x60, 0x20, 0x20, 0x70, \  ; 1
8
            0xF0, 0x10, 0xF0, 0x80, 0xF0, \  ; 2
9
            0xF0, 0x10, 0xF0, 0x10, 0xF0, \  ; 3
10
            0x90, 0x90, 0xF0, 0x10, 0x10, \  ; 4
11
            0xF0, 0x80, 0xF0, 0x10, 0xF0, \  ; 5
12
            0xF0, 0x80, 0xF0, 0x90, 0xF0, \  ; 6
13
            0xF0, 0x10, 0x20, 0x40, 0x40, \  ; 7
14
            0xF0, 0x90, 0xF0, 0x90, 0xF0, \  ; 8
15
            0xF0, 0x90, 0xF0, 0x10, 0xF0, \  ; 9
16
            0xF0, 0x90, 0xF0, 0x90, 0x90, \  ; A
17
            0xE0, 0x90, 0xE0, 0x90, 0xE0, \  ; B
18
            0xF0, 0x80, 0x80, 0x80, 0xF0, \  ; C
19
            0xE0, 0x90, 0x90, 0x90, 0xE0, \  ; D
20
            0xF0, 0x80, 0xF0, 0x80, 0xF0, \  ; E
21
            0xF0, 0x80, 0xF0, 0x80, 0x80     ; F
22
 
23
        opcode  dw 0          ; operation code
24
        V       db 16 dup(0)  ; 16 8-bit registers
25
        I       dw 0          ; additional register (usually used for storing addresses)
26
        P_C     dw 0          ; program counter
27
        S_P     dw 0          ; stack pointer
28
        delay_timer db 0
29
        sound_timer db 0
30
        stackmem    dw STACK_SIZE dup(0)  ; stack memory
31
        key         db KEY_SIZE dup (0) ; keyboard
32
        chip8_draw_flag db 0
33
        next_rand       dd 1
34
 
35
        align 4
36
        fread_struct:
37
            .subfunction    dd 0               ; + 0
38
            .offset_low     dd 0               ; + 4
39
            .offset_high    dd 0               ; + 8
40
            .size           dd MAX_GAME_SIZE   ; + 12
41
            .buffer         dd memory + 0x200  ; + 16
42
                            db 0               ; + 20
43
            .filename:      dd 0               ; + 24
44
 
45
        sys_colors system_colors
46
        main_window_title db 'CHIP-8 Emulator',0
47
 
8734 rgimad 48
        imgbuf_ptr  dd ? ; pointer to in-memory image buffer
49
 
8725 rgimad 50
;=========================================
51
align 16
52
_i_end:
53
; uninitialized data
54
        cmdline rb 1024 ; reserve for command line arguments
55
 
56
        memory  rb MEM_SIZE
57
        gfx     rb GFX_SIZE
58
 
59
        ;tmp_buf rb 128