Subversion Repositories pentevo

Rev

Rev 1067 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1067 Rev 1186
Line 1... Line 1...
1
 
1
 
2
; LAST UPDATE: 21.02.2023 savelij
2
; LAST UPDATE: 16.02.2025 savelij
3
 
3
 
4
                TITLE "menu_execute.a80"
4
                TITLE "menu_execute.a80"
5
 
5
 
6
; загрузка с ленты
6
; загрузка с ленты
7
TAPELOAD        LD H,CMOS_BYTE_00
7
TAPELOAD        LD H,CMOS.BYTE_00
8
                CALL READCMOS
8
                CALL READCMOS
9
                AND M_EMUL_TAPE
9
                AND CMOS_ED.M_EMUL_TAPE
10
                JP NZ,EMULTAPLOAD
10
                JP NZ,EMULTAPLOAD
11
                LD IX,TAPE_LDT
11
                LD IX,TAPE_LDT
12
        RST8 _WINW
12
        RST8 _WINW
13
TAPELOAD1       CALL MEMSET                     ; выставили режимы памяти и турбы
13
TAPELOAD1       CALL MEMSET                     ; выставили режимы памяти и турбы
14
                LD HL,BAS4TAPE
14
                LD HL,BAS4TAPE
Line 91... Line 91...
91
FILE_NONE       LD IX,FILENONE
91
FILE_NONE       LD IX,FILENONE
92
        RST8 _WINW
92
        RST8 _WINW
93
                JP STUPID1
93
                JP STUPID1
94
 
94
 
95
; проверка виртуального привода
95
; проверка виртуального привода
96
CMP_VIRTUAL     LD H,VIRT_REAL_DRIVE
96
CMP_VIRTUAL     LD H,CMOS.VIRT_REAL_DRIVE
97
                CALL READCMOS
97
                CALL READCMOS
98
                LD A,(DRV_SYM)
98
                LD A,(DRV_SYM)
99
                LD D,A                          ; номер текущего реального дисковода
99
                LD D,A                          ; номер текущего реального дисковода
100
                LD A,L
100
                LD A,L
101
                RRCA
101
                RRCA
Line 356... Line 356...
356
        RST8 _CMOS_RW,_CLEAR_CMOS
356
        RST8 _CMOS_RW,_CLEAR_CMOS
357
                CALL SET_MODES
357
                CALL SET_MODES
358
                JP RESTART
358
                JP RESTART
359
 
359
 
360
; установка задержки до определения HDD
360
; установка задержки до определения HDD
361
HDDTIMEOUT      LD H,HDD_TIMEOUT
361
HDDTIMEOUT      LD H,CMOS.HDD_TIMEOUT
362
                CALL READCMOS
362
                CALL READCMOS
363
                LD E,A
363
                LD E,A
364
                AND 0x0F
364
                AND 0x0F
365
                INC A
365
                INC A
366
                CP 10
366
                CP 10
Line 376... Line 376...
376
                ADD A,'0'
376
                ADD A,'0'
377
                LD (TXT_HDDTIMEOUT),A
377
                LD (TXT_HDDTIMEOUT),A
378
                JR REPRINT_MENU
378
                JR REPRINT_MENU
379
 
379
 
380
; установка задержки запуска screensaver
380
; установка задержки запуска screensaver
381
SCRSAVTIMEOUT   LD H,HDD_TIMEOUT
381
SCRSAVTIMEOUT   LD H,CMOS.HDD_TIMEOUT
382
                CALL READCMOS
382
                CALL READCMOS
383
                LD E,A
383
                LD E,A
384
                AND 0xF0
384
                AND 0xF0
385
                ADD A,0x10
385
                ADD A,0x10
386
                CP 0xA0
386
                CP 0xA0
Line 401... Line 401...
401
                ADD A,'0'
401
                ADD A,'0'
402
                LD (TXT_SCRSAVDELAY),A
402
                LD (TXT_SCRSAVDELAY),A
403
                JR REPRINT_MENU
403
                JR REPRINT_MENU
404
 
404
 
405
; установка разрешения/запрещения озвучки клавиатуры
405
; установка разрешения/запрещения озвучки клавиатуры
406
SOUND_KEYS      LD C,M_SOUNDKEYS
406
SOUND_KEYS      LD C,CMOS_EC.M_SOUNDKEYS
407
                LD HL,SNDKEYS_STAT
407
                LD HL,SNDKEYS_STAT
408
SET_MENU        PUSH HL
408
SET_MENU        PUSH HL
409
                LD H,CMOS_BYTE_01
409
                LD H,CMOS.BYTE_01
410
SET_MENU1       CALL READCMOS
410
SET_MENU1       CALL READCMOS
411
                XOR C
411
                XOR C
412
                LD L,A
412
                LD L,A
413
                CALL WRITECMOS
413
                CALL WRITECMOS
414
                AND C
414
                AND C
Line 419... Line 419...
419
                CALL REST_COLCURS
419
                CALL REST_COLCURS
420
        RST8 _COM_DEV,_CONTROL_SD
420
        RST8 _COM_DEV,_CONTROL_SD
421
                JP _RULILKA
421
                JP _RULILKA
422
 
422
 
423
; установка разрешения/запрещения доступа к SD карте NEOGS
423
; установка разрешения/запрещения доступа к SD карте NEOGS
424
ACS_SDNGS       LD C,M_ACCESSSDG
424
ACS_SDNGS       LD C,CMOS_EC.M_SD_NGS_ONOFF
425
                LD HL,ACCSSDG_STAT
425
                LD HL,ACCSSDG_STAT
426
                JR SET_MENU
426
                JR SET_MENU
427
 
427
 
428
; установка выбора драйвера принтера
428
; установка выбора драйвера принтера
429
AYPRN_SETUP     LD C,M_TYPE_FONT
429
AYPRN_SETUP     LD C,CMOS_ED.M_TYPE_FONT
430
                LD HL,ETXT_AYPRINTER
430
                LD HL,ETXT_AYPRINTER
431
                JR SET_MENU
431
                JR SET_MENU
432
 
432
 
433
; включение/выключение автостарта TAP файла при выборе в FILE BROWSER
433
; включение/выключение автостарта TAP файла при выборе в FILE BROWSER
434
AUTO_TAPE       LD C,M_AUTO_TAPE
434
AUTO_TAPE       LD C,CMOS_ED.M_AUTO_TAPE
435
                LD HL,TXT_AUTOTAPE
435
                LD HL,TXT_AUTOTAPE
436
                PUSH HL
436
                PUSH HL
437
                LD H,CMOS_BYTE_00
437
                LD H,CMOS.BYTE_00
438
                JR SET_MENU1
438
                JR SET_MENU1
439
 
439
 
440
; для резидента HONEY COMANDER
440
; для резидента HONEY COMANDER
441
; включение/выключение резидента
441
; включение/выключение резидента
442
REZID_SETUP     LD C,M_REZIDENT
442
REZID_SETUP     LD C,CMOS_EC.M_REZIDENT
443
                LD HL,TXT_REZIDENT
443
                LD HL,TXT_REZIDENT
444
                JR SET_MENU
444
                JR SET_MENU
445
 
445
 
446
; включение/выключения порчи резидента при запуске
446
; включение/выключения порчи резидента при запуске
447
KILL_REZID      LD C,M_KILL_REZIDENT
447
KILL_REZID      LD C,CMOS_E9.M_KILL_REZIDENT
448
                LD HL,TXT_KILLREZID
448
                LD HL,TXT_KILLREZID
449
                PUSH HL
449
                PUSH HL
450
                LD H,CMOS_BYTE_03
450
                LD H,CMOS.BYTE_03
451
                JR SET_MENU1
451
                JR SET_MENU1
452
 
452
 
453
; установка перед выводом меню SETUP
453
; установка перед выводом меню SETUP
454
SETUPM          LD IX,SETUPER
454
SETUPM          LD IX,SETUPER
455
                LD H,CMOS_BYTE_01
455
                LD H,CMOS.BYTE_01
456
                CALL READCMOS
456
                CALL READCMOS
457
                LD B,A
457
                LD B,A
458
                AND M_SOUNDKEYS
458
                AND CMOS_EC.M_SOUNDKEYS
459
                LD HL,SNDKEYS_STAT
459
                LD HL,SNDKEYS_STAT
460
                CALL SET_ONOFF
460
                CALL SET_ONOFF
461
                LD A,B
461
                LD A,B
462
                AND M_ACCESSSDG
462
                AND CMOS_EC.M_SD_NGS_ONOFF
463
                LD HL,ACCSSDG_STAT
463
                LD HL,ACCSSDG_STAT
464
                CALL SET_ONOFF
464
                CALL SET_ONOFF
465
                LD H,CMOS_BYTE_00
465
                LD H,CMOS.BYTE_00
466
                CALL READCMOS
466
                CALL READCMOS
467
                AND M_AUTO_TAPE
467
                AND CMOS_ED.M_AUTO_TAPE
468
                LD HL,TXT_AUTOTAPE
468
                LD HL,TXT_AUTOTAPE
469
                CALL SET_ONOFF
469
                CALL SET_ONOFF
470
                LD H,HDD_TIMEOUT
470
                LD H,CMOS.HDD_TIMEOUT
471
                CALL READCMOS
471
                CALL READCMOS
472
                LD D,A
472
                LD D,A
473
                AND 0x0F
473
                AND 0x0F
474
                ADD A,'0'
474
                ADD A,'0'
475
                LD (TXT_HDDTIMEOUT),A
475
                LD (TXT_HDDTIMEOUT),A
Line 483... Line 483...
483
                LD (TXT_SCRSAVDELAY),A
483
                LD (TXT_SCRSAVDELAY),A
484
        RST8 _WINW
484
        RST8 _WINW
485
                JP _RULILKA
485
                JP _RULILKA
486
 
486
 
487
; установка разрешения/запрещения эмуляции ленты
487
; установка разрешения/запрещения эмуляции ленты
488
SET_EMU_TAPE    LD H,CMOS_BYTE_00
488
SET_EMU_TAPE    LD H,CMOS.BYTE_00
489
                CALL READCMOS
489
                CALL READCMOS
490
                AND M_EMUL_TAPE
490
                AND CMOS_ED.M_EMUL_TAPE
491
                RET Z
491
                RET Z
492
                LD BC,BREAK_LOW
492
                LD BC,BREAK_LOW
493
                LD A,LOW (ADRBRK_EMUTAP)
493
                LD A,LOW (ADRBRK_EMUTAP)
494
                OUT (C),A
494
                OUT (C),A
495
                LD B,HIGH (BREAK_HIGH)
495
                LD B,HIGH (BREAK_HIGH)