Skip to content

Commit b7e265f

Browse files
authored
Merge pull request #152 from Konamiman/v2.1.3
v2.1.3 * Fix "map to device sector 0" option in CALL MAPDRV * Modify ZAP_ALL to skip drives assigned to device-based drivers * Fix crash on sector buffer invalidation after writing to device * Fix _GETCLUS copying 64 bytes of data instead of 16
2 parents 3a1e520 + f3e77ba commit b7e265f

File tree

9 files changed

+27
-7
lines changed

9 files changed

+27
-7
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ source/tools/data.mac
4949
*.suo
5050
NEXTOR.SYS
5151
NEXTORK.SYS
52+
NEXTOR.SYS.japanese
5253
nextor_base.dat
5354
*.LST
5455

-4.63 KB
Binary file not shown.

source/command/msxdos/sys.mac

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1392,19 +1392,28 @@ KBDOS:
13921392
; LD E,RELEASE##+(RELEASE##/256)*16
13931393
; RET
13941394

1395+
@GETCLUS:
1396+
ld b,16
1397+
jr _RUN_AND_COPY
1398+
13951399
@GDRVR:
13961400
@GDLI:
1397-
@GETCLUS:
1401+
ld b,64
1402+
1403+
_RUN_AND_COPY:
13981404
push hl
1405+
push bc
13991406
LD HL,BUFF3
14001407
call GO_BDOS##
1408+
pop bc
14011409
pop hl
14021410
or a
14031411
ret nz
14041412
push hl
14051413
ex de,hl
1414+
ld c,b
1415+
ld b,0
14061416
ld hl,BUFF3
1407-
ld bc,64
14081417
ldir
14091418
pop hl
14101419
ret

source/command/msxdos/ver.mac

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
;
1111
;
1212
VERSION EQU 2
13-
RELEASE EQU 1*256+2 ; Version 2.12.
14-
CRYEAR EQU 2021
13+
RELEASE EQU 1*256+3 ; Version 2.12.
14+
CRYEAR EQU 2025
1515
;
1616
GLOBAL VERSION, RELEASE, CRYEAR
1717
;

source/kernel/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
# N80=/path/to/N80 make
99

1010

11-
VERSION := 2.1.2
11+
VERSION := 2.1.3
1212

1313
ifeq ($(strip $(N80)),)
1414
N80=N80

source/kernel/bank2/rw.mac

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -388,6 +388,8 @@ correct_loop: push bc
388388
add hl,bc
389389
ld a,(hl) ;A := sector number (bit16-22)
390390
; from this buffer
391+
sbc hl,bc
392+
391393
;===== end add FAT16
392394
ex de,hl
393395
ld bc,(RW_PSEC##) ;Compare with sector number

source/kernel/bank2/val.mac

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3060,6 +3060,13 @@ zap_all_loop: ld a,b ;Get logical unit number
30603060
or e
30613061
jr z,no_zap_unit ;Skip if zero (no unit)
30623062
;
3063+
push hl ;Only zap if the unit is not controlled
3064+
ld de,UD_FLAGS ;by a device-based driver
3065+
add hl,de
3066+
bit UF_DBD,(hl)
3067+
pop hl
3068+
jr nz,no_zap_unit
3069+
30633070
ld hl,UD_TIME##
30643071
add hl,de ;HL -> UD_TIME byte
30653072
ld a,(hl) ;If UD_TIME is non-zero then

source/kernel/bank4/partit.mac

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4488,7 +4488,7 @@ MAPDRV_NOGETCUR:
44884488
ld hl,0
44894489
ld (MAPDRV_SEC),hl
44904490
ld (MAPDRV_SEC+2),hl
4491-
jr MAPDRV_GOTPAR
4491+
jr MAPDRV_GOT_PAR_SEC
44924492
MAPDRV_NOP0:
44934493

44944494
;* If partition number is 2 to 4, convert it to primary or logical
@@ -4549,6 +4549,7 @@ MAPDRV_GOTPAR:
45494549

45504550
ld (MAPDRV_SEC),de
45514551
ld (MAPDRV_SEC+2),hl
4552+
MAPDRV_GOT_PAR_SEC:
45524553

45534554
;* Perform the mapping
45544555

source/kernel/kvar.mac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
const SEC_DOS_VERSION_LOW,1 ;Minor version number, low nybble
2727
const MAIN_NEXTOR_VERSION,2
2828
const SEC_NEXTOR_VERSION_HIGH,1
29-
const SEC_NEXTOR_VERSION_LOW,2
29+
const SEC_NEXTOR_VERSION_LOW,3
3030
;===== end mod DOS2.50
3131
;
3232
;

0 commit comments

Comments
 (0)