Subversion Repositories NedoOS

Rev

Details | Last modification | View Log

Rev Author Line No. Line
1476 alone 1
txt_setup:          db 0x0A,"Necronomicon (Book of dead)",0x0D,0x0A
2
                    db "(c) 2006 Flight of Navigator",0x0D,0x0A
3
                    db "(c) 2006 I Turned into a Martian!",0x0D,0x0A
4
                    db "----------------------------------------",0x0D,0x0A
5
                    db "language setup",0x0D,0x0A
6
                    db 0x0D,0x0A
7
;                    db "3. Russian",0        
8
                    db "1. ",0x90,0xe3,0xe1,0xe1,0xaa,0xa8,0xa9,0x0D,0x0A,0
9
txt_censor_setup:
10
                    db 0x0D,0x0A
11
                    db "----------------------------------------",0x0D,0x0A
12
                    db "Censorship? (If available)",0x0D,0x0A
13
                    db 0x0D,0x0A
14
                    db "1. Yes",0x0D,0x0A
15
                    db "2. No",0x0D,0x0A
16
                    db 0
17
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;         
18
import_push:
19
 
20
        call store8000c000
21
 
22
        ld a,(load_buf1)
23
        SETPG8000
24
 
25
        ld a,(load_buf2)
26
        SETPGC000
27
 
28
        ld hl,0x8005
29
        ld de,PUSH_DATA
30
 
31
        ld b,8
32
import_push_loop:
33
        push bc
34
 
35
 
36
        push hl
37
        ld b,8
38
import_push_iloop1:
39
        ld a,(hl)
40
        ld (de),a
41
        call DHL
42
        inc de
43
        djnz import_push_iloop1
44
        pop hl
45
 
46
        set 6,H
47
        push hl
48
        ld b,8
49
import_push_iloop2:
50
        ld a,(hl)
51
        ld (de),a
52
        call DHL
53
        inc de
54
        djnz import_push_iloop2
55
        pop hl
56
 
57
        res 6,H
58
        set 5,H
59
 
60
        push hl
61
        ld b,8
62
import_push_iloop3:
63
        ld a,(hl)
64
        ld (de),a
65
        call DHL
66
        inc de
67
        djnz import_push_iloop3
68
        pop hl
69
 
70
        set 6,H
71
        push hl
72
        ld b,8
73
import_push_iloop4:
74
        ld a,(hl)
75
        ld (de),a
76
        call DHL
77
        inc de
78
        djnz import_push_iloop4
79
        pop hl
80
 
81
        res 6,H
82
        res 5,H
83
        inc hl
84
 
85
        pop bc
86
        djnz import_push_loop
87
        jp restore8000c000
88
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;         
89
pre_init
90
    ld e,6+0x80  //set TEXT mode  keep
91
    OS_SETGFX
92
 
93
        ld e,0
94
        OS_CLS
95
 
96
        OS_GETMAINPAGES
97
;dehl=??N?a ???a?? o 0000,4000,8000,c000
98
        ld a,d
99
        ld (winpage0),a
100
        ld a,e
101
        ld (winpage1),a
102
        ld a,h
103
        ld (winpage2),a
104
        ld a,l
105
        ld (winpage3),a
106
 
107
; get music page page
108
        OS_NEWPAGE
109
        or a
110
        jp nz,memoryerror
111
        ld a,e
112
        ld (music_buf),a
113
 
114
; get gfx load buffer  2 pages
115
        OS_NEWPAGE
116
        or a
117
        jp nz,memoryerror
118
        ld a,e
119
        ld (load_buf1),a
120
 
121
        OS_NEWPAGE
122
        or a
123
        jp nz,memoryerror
124
        ld a,e
125
        ld (load_buf2),a
126
 
127
; get ingame gfx buffer pages 6 pages
128
        OS_NEWPAGE
129
        or a
130
        jp nz,memoryerror
131
        ld a,e
132
        ld (scr_buf1),a
133
 
134
        OS_NEWPAGE
135
        or a
136
        jp nz,memoryerror
137
        ld a,e
138
        ld (scr_buf2),a
139
 
140
        OS_NEWPAGE
141
        or a
142
        jp nz,memoryerror
143
        ld a,e
144
        ld (mem_buf1),a
145
 
146
        OS_NEWPAGE
147
        or a
148
        jp nz,memoryerror
149
        ld a,e
150
        ld (mem_buf2),a
151
 
152
        OS_NEWPAGE
153
        or a
154
        jp nz,memoryerror
155
        ld a,e
156
        ld (font_page),a
157
 
158
       jr skip_setup ;////!!!!!!!!!!!!!!!!!
159
 
160
;language setup
161
;----------------------------------------
162
        ld hl,txt_setup
163
        call print_hl
164
setup_lp:        
165
        YIELDGETKEYLOOP
166
        cp "1"
167
        jr z,setup_is1
168
;        cp "2"
169
;        jr z,setup_is2
170
;        cp "3"
171
;        jr z,setup_is3
172
        jr setup_lp
173
setup_is1:
174
          ;xor a
175
          ld a,1
176
          jr setup_set
177
;setup_is2:
178
;         ld a,1
179
;          jr setup_set
180
;setup_is3:
181
;         ld a,2
182
setup_set:
183
        ld (language),a
184
 
185
;censor setup
186
;----------------------------------------
187
        ld hl,txt_censor_setup
188
        call print_hl
189
setup_lpc:        
190
        YIELDGETKEYLOOP
191
        cp "1"
192
        jr z,setup_isc1
193
        cp "2"
194
        jr z,setup_isc2
195
        jr setup_lpc
196
setup_isc1:
197
          ld a,1
198
          jr setup_setc
199
setup_isc2:
200
         xor a
201
setup_setc:
202
        ld (censor_mode),a
203
;setup is done 
204
;----------------------------------------
205
 
206
skip_setup:
207
;-----------------------------------------
208
        ;go to resources directory
209
        ld de,res_path
210
        OS_CHDIR
211
        or a
212
        jp nz,dirchangeerror
213
 
214
        ;----------------------
215
        ;--load music player
216
 
217
 
218
              call setmusicpage
219
                ld a,(mus_mode)
220
                ld hl,mus_modes
221
                call sel_word
222
 
223
                ld de,buf
224
                call copystr_hlde
225
                ld hl,mus_plr_path
226
                call copystr_hlde
227
                xor a
228
                ld (de),a
229
                ld (wlock),a
230
 
231
                ld de,buf
232
                call openstream_file
233
                or a
234
                jp nz,fileopenerror
235
 
236
                ld hl,0x1000 ;len
237
                ld de,player_load ;addr
238
                call readstream_file
239
                or a
240
                jp nz,filereaderror
241
 
242
                call closestream_file
243
 
244
             call unsetmusicpage
245
;load font 
246
loadfont:
247
              call setfontpage
248
              ld de,font_file  
249
              call openstream_file
250
              or a
251
              jp nz,fileopenerror
252
 
253
              ld hl,0x4000 ;len
254
              ld de,FONT ;addr
255
              call readstream_file
256
              or a
257
              jp nz,filereaderror
258
 
259
              call closestream_file
260
 
261
              ld de,font_file2  
262
              call openstream_file
263
              or a
264
              jp nz,fileopenerror
265
 
266
              ld hl,0x1000 ;len
267
              ld de,FONT2 ;addr
268
              call readstream_file
269
              or a
270
              jp nz,filereaderror
271
 
272
              call closestream_file
273
 
274
 
275
 
276
              call unsetfontpage
277
 
278
        call int_set
279
 
280
        ;set mode
281
        ld e,0+0x80  //set EGA mode keep
282
        OS_SETGFX
283
 
284
;prepare animation
285
        call clear_screen
286
deb_lnk
287
        ld hl,anim_w
288
        call load_gfx_to_load_buf_nopal
289
        call import_push
290
;;
291
 
292
 
293
        ld de,PERSISTSAVE
294
        call openstream_file
295
        or a
296
        jr nz,_no_dc
297
        ld a,1
298
        jr _dc_c
299
_no_dc:
300
        xor a
301
_dc_c:
302
        ld (dc_enabled),a
303
 
304
;︨᦬ mem_buf. 鲯לּ败󲽠롪 ������硽뱠닊        
305
        ld a,(mem_buf1)
306
        SETPGC000
307
        ld hl,0xc000
308
        ld de,0xc001
309
        ld bc,16383
310
        ld (hl),0
311
        ldir
312
        ld a,(mem_buf2)
313
        SETPGC000
314
        ld hl,0xc000
315
        ld de,0xc001
316
        ld bc,16383
317
        ld (hl),0
318
        ldir
319
        ret
320
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
321
 
322
introduction
323
        ;---load resources
324
        ; '1' - load image
325
 
326
 
327
        ld hl,TABLE_W
328
        ld (CODEPAGE),hl
329
 
330
        ld hl,intro_pic1
331
        call load_big_img_dark2
332
        call palette_precalc
333
        call fade_fromblack
334
 
335
        call _intr_pause
336
 
337
        call fade_toblack
338
        ld hl,intro_pic2
339
        call load_big_img_dark2
340
        call palette_precalc
341
        call fade_fromblack
342
 
343
        call _intr_pause
344
 
345
        call fade_toblack
346
        ld hl,intro_pic3
347
        call load_big_img_dark2
348
        call palette_precalc
349
        call fade_fromblack
350
 
351
        call _intr_pause
352
 
353
_intr_exit:
354
        call fade_towhite
355
        ld a,1
356
        ld (intro_switch),a
357
        ret
358
 
359
 
360
;_intr_pause:
361
;          ld b,0x7f ;ff //450
362
;_ppp_halt_loop:
363
;        halt
364
;        djnz _ppp_halt_loop      
365
;        ret
366
 
367
_intr_pause:
368
          ld b,0x7f ;450
369
_ppp_halt_loop:
370
        halt
371
        call getkey
372
        cp NOKEY
373
        jr nz,_ppp_exit
374
_ppp_p2:
375
        djnz _ppp_halt_loop      
376
        ret
377
_ppp_exit:
378
        pop hl
379
        jp _intr_exit