Crazy-Blaster/Crazy BIOS/Info.txt
2024-07-31 03:29:05 +10:00

119 lines
5.2 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

; § ¬ ¯«¥­ ç¥à¥§ ª àâã ¯®à⮢ ­  #7C/#3C ¨ #74/#24
CNF_PORT:
.ON EQU #74
.OFF EQU #24
.vBIOS EQU .ON
.vZX_ROM EQU .OFF
; Data:
.BIOS EQU 0
.EXTENSION EQU 1
.TURBO.OFF EQU 2 ; ¤ ­­ë¥ ¤«ï ¢ëª«î祭¨ï TURBO
.TURBO.ON EQU 3 ; ¤ ­­ë¥ ¤«ï ¢ª«î祭¨ï TURBO
.CNF_0 EQU #04 ; ª àâ  ¯®à⮢ 0
.CNF_1 EQU #0C ; ª àâ  ¯®à⮢ 1 (¤«ï ०¨¬  ¯®ç⨠ç¨á⮣® zx spectrum)
.CNF_2 EQU #14 ; ª àâ  ¯®à⮢ 2
.CNF_3 EQU #1C ; ª àâ  ¯®à⮢ 3 (०¨¬ ¤®áâ㯠 ª ¯®àâ ¬ ƒ93 ¡¥§ ᨣ­ «  TR-DOS)
.PENT_RESET EQU #20
.SCORP_RESET EQU #40
.CNF_512 EQU #80 ; ¢ª«î祭¨¥ Pentagon 128
.ZX_BIOS EQU #00
.ZX_EXTENSION EQU #01
; ¯à¨¡¨â ¢ ª®­ä¥ £¢®§¤ï¬¨ ­  #7C/#3C
SYS_PORT:
.ON EQU #7C
.OFF EQU #3C
.RAM EQU .OFF
.ROM EQU .ON
; Data:
.PAGE0 EQU 1
.PAGE8 EQU 0
.EXTENSION EQU .PAGE0
.BIOS EQU .PAGE8
.TURBO.ON EQU CNF_PORT.TURBO.ON
.TURBO.OFF EQU CNF_PORT.TURBO.OFF
.CNF_0 EQU CNF_PORT.CNF_0
.CNF_1 EQU CNF_PORT.CNF_1
.CNF_2 EQU CNF_PORT.CNF_2
.CNF_3 EQU CNF_PORT.CNF_3
.PENT_RESET EQU CNF_PORT.PENT_RESET
.SCORP_RESET EQU CNF_PORT.SCORP_RESET
.CNF_512 EQU CNF_PORT.CNF_512
---------------------------------------------------
CNF_PORT ¢¨á¨â ­  4 ¢­¥è­¨å ¯®àâ å (#7C/#3C ¨ #74/#24) ç¥à¥§ ª àâã ¯®à⮢.
SYS_PORT £¢®§¤ï¬¨ ¢ ª®­ä¥ ­  #7C/#C
SYS_PORT ⮫쪮 ¯¥à¥ª«îç ¥â RAM/ROM
CNF_PORT ¬¥­ï¥â ¢áñ ®áâ «ì­®¥, ¯à¨ ¡¨â1=0 ¬¥­ïîâáï áâà ­¨æë í¬ã«ïâ®à  <20>‡“ ç¥à¥§ ¡¨â0
CNF_PORT
bit0 - TURBO: off/on ¨«¨ vROM:
; #24 - áâà ­¨æ  ¨§ ¢­.¯®àâ  (#E0..#E3)/(#E4..#E7)
; #74 - áâà ­¨æ  ¨§ ¢­.¯®àâ  #EB/#EF
bit1 - 1 - TURBO ena, 0 - ¯¥à¥ª«î祭¨¥ vROM page
bit2 - 1 - CNF ena
bit3 - \_ cnf0..cnf3 -\
bit4 - / - \
bit5 - CNF_PN[5..0]_RESET by 1 - á¡à®á <20>¥­â. ¯®àâ  - -|---> ¤¥©áâ¢ãîâ ⮫쪮 ¯à¨ bit2=1
bit6 - CNF_SC_RESET by 1 - á¡à®á ‘ª®à¯. ¯®àâ  - /
bit7 - CNF_PN[7..6]_RESET by 0 - á¡à®á <20>¥­â-512 -/
<20>¥à¥ª«î祭¨¥ áâà ­¨æ vROM:
____________________________________________________
| ‡­ ç¥­¨¥ | ‡ ¯¨áì ¢® ¢­¥è­¨© ¯®àâ: |
| ¨§ ¢­ãâà. |____________________________________|
| ¯®àâ  | #24 ---- | | | |
| €«ìâ¥àë | #3C (-rom) | | | |
| ||| | #7C (+rom) | #74 | 1FFD | 7FFD |
| \|/ | bit1..0 | bit1..0 | bit1 | bit4 |
|_____________|____________|_________|______|______|
|E0 | 00 | | 1 | ... |
|E1 (+dos_on) | 00 | | 0 | ... |
|E2 | 00 | | 0 | 0 |
|E3 | 00 | | 0 | 1 |
|E4 | 01 | | 1 | ... | LOGO #4B
|E5 (+dos_on) | 01 | | 0 | ... |
|E6 | 01 | | 0 | 0 | Recovery_1 #48
|E7 | 01 | | 0 | 1 | Recovery_2 #49
|EB | | 00 | ... | ... | BIOS #46
|EF | | 01 | ... | ... | EXTENSION #47
|_____________|____________|_________|______|______|
... - §­ ç¥­¨¥ ஫¨ ­¥ ¨£à ¥â
‘â ­¤ àâ­ë¥ áâà ­¨æë އ“ ¤«ï ®¡à §®¢ <20>‡“ ᯥªâà㬠:
Page Name Int.Port Page Name Int.Port
#42 BASIC 128 #E2 | #48 ??? ??? ??? #E6
#43 BASIC 48 #E3 | #49 ??? ??? ??? #E7
#44 TR-DOS #E1 | #4A ??? ??? ??? #E5
#45 BIOS (ZX_EXP) #E0 | #4B ??? ??? ??? #E4
#46 BIOS (ZX_EXP) #EB
#47 BIOS (ZX_EXP2) #EF
SYS_PORT:
bit0 - TURBO: on/off ¨«¨ BIOS: Part1/Part0
bit1 - 1 - TURBO ena, 0 - ¯¥à¥ª«î祭¨¥ BIOS-PAGE
bit2 - 1 - CNF ena
bit3 - \_ cnf0..cnf3 -\
bit4 - / - \
bit5 - CNF_PN[5..0]_RESET by 1 - á¡à®á <20>¥­â. ¯®àâ  - -|---> ¤¥©áâ¢ãîâ ⮫쪮 ¯à¨ bit2=1
bit6 - CNF_SC_RESET by 1 - á¡à®á ‘ª®à¯. ¯®àâ  - /
bit7 - CNF_PN[7..6]_RESET by 0 - á¡à®á <20>¥­â-512 -/
”ã­ªæ¨ï bit0 ®¯à¥¤¥«ï¥âáï ç¥à¥§ bit1
bit7..bit3 áà ¡ â뢠î⠯ਠbit2 = 1
‡ ¯¨áì ¢ ¯®àâ #7C ¯®¤ª«îç ¥â <20>‡“ ¢ ®ª­® 0, § ¯¨áì ¢ ¯®àâ #3C ®âª«îç ¥â
<EFBFBD>‡“ ®â ®ª­  0, ¯®í⮬㠯®àâ 7/3C ­ §ë¢ ¥âáï System/User.
<EFBFBD>¥à¥ª«î祭¨¥ áâà ­¨æ <20>‡“ à ¡®â ¥â ¢ í⮬ ¢ à¨ ­â¥ â ª:
¢ <20>‡“ 16 áâà ­¨æ ®â 0 ¤® 15, ¯®àâ #5C ¨å ¯¥à¥ª«îç ¥â á bit3 xor /SYS (SYS_PORT bit[1..0] = b"0X" (BIOS: Part1/Part0))
¥á«¨ ᤥ« âì ld a,1 : out (sys_port_on),a - â® ­ã¬¥à æ¨ï áâà ­¨æ <20>‡“ ¡ã¤¥â ¯à ¢¨«ì­ ï ®â 0 ¤® 15,
¥á«¨ ᤥ« âì ld a,0 : out (sys_port_on),a - â® ­ã¬¥à æ¨ï áâà ­¨æ <20>‡“ ¡ã¤¥â á ¨­¢¥àâ¨à®¢ ­­ë¬ bit3:
áâà ­¨æë <20>‡“ 0-7 ¡ã¤ã⠭㬥஢ âìáï ª ª 8-15
áâà ­¨æë <20>‡“ 8-15 ¡ã¤ã⠭㬥஢ âìáï ª ª 0-7
¯¥à¥ª«î祭¨¥ áâà ­¨æ <20>‡“ ¯®à⮬ #5C ¯à®¨á室¨â ⮫쪮 ¯à¨ ¢®âª­ã⮩ <20>‡“ ç¥à¥§ sys_port.
Œ®¦­® ¯¥à¥ª«îç âì áâà ­¨æë ç¥à¥§ ¢­ãâ७­¨© ¯®àâ #8F, ⮣¤  bit4 í⮣® ¯®àâ  ¢ª«îç ¥â ᨣ­ « § ¯¨á¨ ¤«ï <20>‡“.
’ ª ¦¥ íâ®â ¯®àâ ¤ ñâ ¯àï¬ãî ­ã¬¥à æ¨î áâà ­¨æ ¯à¨ ãáâ ­®¢«¥­­®¬ bit4.
----------------------------------------------------
;!TODO
 ¯¤¥©â¥à ¤®«¦¥­ á ¬ ¢áâ ¢«ïâì ­®¬¥à ¯« âë ¨ ⨯ ¡¨âáâਬ