Subversion Repositories Kolibri OS

Rev

Rev 29 | Rev 40 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 29 Rev 34
Line 414... Line 414...
414
	mov	si, time_msg-0x10000
414
	mov	si, time_msg-0x10000
415
	call	print
415
	call	print
416
; get start time
416
; get start time
417
	call	.gettime
417
	call	.gettime
418
	mov	[.starttime-0x10000], eax
418
	mov	[.starttime-0x10000], eax
419
; set timer interrupt handler
-
 
420
	cli
-
 
421
	push	0
-
 
422
	pop	es
-
 
423
	mov	eax, [es:8*4]
-
 
424
	mov	[.oldtimer-0x10000], eax
-
 
425
	mov	word [es:8*4], .newtimer-0x10000
419
	mov	word [.timer-0x10000], .newtimer-0x10000
426
	mov	[es:8*4+2], cs
420
	mov	word [.timer-0x10000+2], cs
427
.printcfg:
421
.printcfg:
428
	_setcursor 9,0
422
	_setcursor 9,0
429
	mov	si, current_cfg_msg-0x10000
423
	mov	si, current_cfg_msg-0x10000
430
	call	print
424
	call	print
431
	mov	si, curvideo_msg-0x10000
425
	mov	si, curvideo_msg-0x10000
Line 485... Line 479...
485
	mov	si, [preboot_device_msgs-0x10000+eax*2]
479
	mov	si, [preboot_device_msgs-0x10000+eax*2]
486
	call	printplain
480
	call	printplain
487
.wait:
481
.wait:
488
; empty BIOS keyboard buffer
482
; empty BIOS keyboard buffer
489
	_setcursor 25,0		; out of screen
483
	_setcursor 25,0		; out of screen
-
 
484
; set timer interrupt handler
-
 
485
	cli
-
 
486
	push	0
-
 
487
	pop	es
-
 
488
	mov	eax, [es:8*4]
-
 
489
	mov	[.oldtimer-0x10000], eax
-
 
490
	mov	eax, [.timer-0x10000]
-
 
491
	mov	[es:8*4], eax
-
 
492
	sti
490
; wait for keypressed
493
; wait for keypressed
491
	mov	ah, 0
494
	mov	ah, 0
492
	int	16h
495
	int	16h
493
	push	ax
496
	push	ax
494
; restore timer interrupt
497
; restore timer interrupt
495
	push	0
498
	push	0
496
	pop	es
499
	pop	es
497
	mov	ecx, [.oldtimer-0x10000]
500
	mov	ecx, [.oldtimer-0x10000]
498
	mov	[es:8*4], ecx
501
	mov	[es:8*4], ecx
-
 
502
	mov	[.timer-0x10000], ecx
499
	_setcursor 7,0
503
	_setcursor 7,0
500
	mov	si, space_msg-0x10000
504
	mov	si, space_msg-0x10000
501
	call	printplain
505
	call	printplain
502
	pop	ax
506
	pop	ax
503
; switch on key
507
; switch on key
Line 565... Line 569...
565
	_setcursor 12,0
569
	_setcursor 12,0
566
	jmp	.d
570
	jmp	.d
567
.oldtimer dd ?
571
.oldtimer dd ?
568
.starttime dd ?
572
.starttime dd ?
569
.bSettingsChanged db ?
573
.bSettingsChanged db ?
-
 
574
.timer dd ?
570
.loader_block dd 0
575
.loader_block dd 0
571
.gettime:
576
.gettime:
572
	mov	ah, 0
577
	mov	ah, 0
573
	int	1Ah
578
	int	1Ah
574
	xchg	ax, cx
579
	xchg	ax, cx
Line 654... Line 659...
654
	cmp	al, 'n'
659
	cmp	al, 'n'
655
	jz	.loadc
660
	jz	.loadc
656
	cmp	al, 'y'
661
	cmp	al, 'y'
657
	jnz	.waityn
662
	jnz	.waityn
658
	call	putchar
663
	call	putchar
-
 
664
	mov	byte [space_msg-0x10000+80], 186
659
	pop	eax
665
	pop	eax
660
	push	cs
666
	push	cs
661
	push	.cont-0x10000
667
	push	.cont-0x10000
662
	push	eax
668
	push	eax
663
	retf
669
	retf
664
.loadc:
670
.loadc:
665
	pop	eax
671
	pop	eax
666
.cont:
672
.cont:
667
	push	cs
673
	push	cs
668
	pop	ds
674
	pop	ds
-
 
675
	mov	byte [space_msg-0x10000+80], 0
669
	_setcursor 15,0
676
	_setcursor 15,0
670
	mov	si, space_msg-0x10000
677
	mov	si, space_msg-0x10000
671
	call	printplain
678
	call	printplain
672
	_setcursor 15,0
679
	_setcursor 15,0
673
.load:
680
.load: