mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 14:11:48 -06:00
Minor Cleanup
This commit is contained in:
@@ -968,6 +968,46 @@ HB_START1: ; BNKCALL ARRIVES HERE, BUT NOW RUNNING IN RAM BANK
|
||||
CALL DSKY_SHOWSEG
|
||||
#ENDIF
|
||||
;
|
||||
; DISCOVER CPU TYPE
|
||||
;
|
||||
; THIS CODE IS DERIVED FROM UNA BY JOHN COFFMAN
|
||||
;
|
||||
; 0: Z80
|
||||
; 1: Z80180 - ORIGINAL Z180 IDENTICAL TO HD64180
|
||||
; 2: Z8S180 - ORIGINAL S-CLASS, REV. K, AKA SL1960, NO ASCI BRG
|
||||
; 3: Z8S180 - REVISED S-CLASS, REV. N, W/ ASCI BRG
|
||||
;
|
||||
LD HL,0 ; L = 0 MEANS Z80
|
||||
;
|
||||
#IF ((PLATFORM == PLT_N8) | (PLATFORM == PLT_MK4) | (PLATFORM == PLT_RCZ180))
|
||||
;
|
||||
; TEST FOR ORIGINAL Z180 USING MLT
|
||||
LD DE,$0506 ; 5 X 6
|
||||
MLT DE ; DE = 30 IF Z180
|
||||
LD A,E ; CHECK IF MULTIPLY HAPPENED
|
||||
CP 30
|
||||
JR NZ,HB_CPU1 ; IT IS A Z80 IF != 30
|
||||
INC L ; FLAG Z80180 OR BETTER
|
||||
;
|
||||
; TEST FOR OLDER S-CLASS
|
||||
IN0 A,(Z180_CCR) ; SUPPOSEDLY ONLY ON S-CLASS
|
||||
INC A ; FF -> 0
|
||||
JR Z,HB_CPU1
|
||||
INC L ; FLAG Z8S180 REV K (SL1960) OR BETTER
|
||||
;
|
||||
; TEST FOR NEWER S-CLASS
|
||||
OUT0 (Z180_ASTC1L),D ; D = 0 AT THIS POINT
|
||||
IN0 A,(Z180_ASTC1L) ; COUNTER REG
|
||||
INC A ; FF -> 0
|
||||
JR Z,HB_CPU1
|
||||
INC L ; FLAG Z8S180 REV N W/ ASCI BRG
|
||||
;
|
||||
#ENDIF
|
||||
;
|
||||
HB_CPU1:
|
||||
LD A,L
|
||||
LD (HB_CPUTYPE),A
|
||||
;
|
||||
; PERFORM DYNAMIC CPU SPEED DERIVATION
|
||||
;
|
||||
CALL HB_CPUSPD ; CPU SPEED DETECTION
|
||||
@@ -1253,23 +1293,13 @@ PSCNX .EQU $ + 1
|
||||
LD HL,(CB_CPUKHZ)
|
||||
CALL PRTD3M ; PRINT AS DECIMAL WITH 3 DIGIT MANTISSA
|
||||
PRTS("MHz$")
|
||||
;
|
||||
#IF ((PLATFORM == PLT_N8) | (PLATFORM == PLT_MK4) | (PLATFORM == PLT_RCZ180))
|
||||
LD L,1 ; flag Z180
|
||||
LD D,0
|
||||
OUT0 (Z180_ASTC1L),D ; D = 0 at this point
|
||||
IN0 A,(Z180_FRC) ; supposedly only on S-class
|
||||
INC A ; FF or 00 -> 0 or 1 (weak S-class or higher)
|
||||
ADD A,L
|
||||
LD L,A ; result to L and A
|
||||
IN0 A,(Z180_ASTC1L) ; counter reg
|
||||
INC A ; FF or 00 -> 0 or 1 (super-S)
|
||||
ADD A,L
|
||||
LD L,A ; 1 means Z180 - 80180
|
||||
LD A,$30 ; 2 means Z180 S-class, SL1960 version
|
||||
ADD A,L ; 3 means Z180 advanced S-class, with Baud Rate Generator
|
||||
PRTS(" Type: $")
|
||||
CALL COUT ; Courtesy John Coffman MK IV UnaBIOS
|
||||
PRTS(", IO=0x$")
|
||||
LD A,(HB_CPUTYPE) ; GET CPU TYPE
|
||||
PRTS(" REV=$")
|
||||
ADD A,$30 ; MAKE DISPLAYABLE DIGIT
|
||||
CALL COUT
|
||||
PRTS(" IO=0x$")
|
||||
LD A,Z180_BASE
|
||||
CALL PRTHEXBYTE
|
||||
#ENDIF
|
||||
@@ -1930,7 +1960,8 @@ SYS_GETBOOTINFO:
|
||||
; DE: CPU SPEED IN KHZ
|
||||
;
|
||||
SYS_GETCPUINFO:
|
||||
LD H,0 ; NOT YET DEFINED
|
||||
LD A,(HB_CPUTYPE)
|
||||
LD H,A
|
||||
LD A,(CB_CPUMHZ)
|
||||
LD L,A
|
||||
LD DE,(CB_CPUKHZ)
|
||||
@@ -3593,6 +3624,8 @@ HEAPCURB .DW 0 ; MARK HEAP ADDRESS AFTER INITIALIZATION
|
||||
;
|
||||
HB_TICKS .FILL 4,0 ; 32 BIT TICK COUNTER
|
||||
;
|
||||
HB_CPUTYPE .DB 0 ; 0=Z80, 1=80180, 2=SL1960, 3=ASCI BRG
|
||||
;
|
||||
STR_BANNER .DB "RetroBrew HBIOS v", BIOSVER, ", ", TIMESTAMP, "$"
|
||||
STR_PLATFORM .DB PLATFORM_NAME, "$"
|
||||
STR_SWITCH .DB "*** Activating CRT Console ***$"
|
||||
|
||||
Reference in New Issue
Block a user