|
42 | 42 |
|
43 | 43 | [4.2.8. CHGBNK (7FD0h)](#428-chgbnk-7fd0h)
|
44 | 44 |
|
| 45 | +[4.2.9 PROMPT (41E8h)](#429-prompt-41e8h) |
| 46 | + |
45 | 47 | [4.3. The driver header](#43-the-driver-header)
|
46 | 48 |
|
47 | 49 | [4.3.1. DRV_SIGN (4100h)](#431-drv_sign-4100h)
|
|
102 | 104 |
|
103 | 105 | [5. Change history](#5-change-history)
|
104 | 106 |
|
105 |
| -[5.1. v2.1.0 beta 2](#51-v210-beta-2) |
| 107 | +[5.1. v2.1.0 final](#51-v210-final) |
| 108 | + |
| 109 | +[5.2. v2.1.0 beta 2](#52-v210-beta-2) |
106 | 110 |
|
107 |
| -[5.2. v2.1.0 beta 1](#52-v210-beta-1) |
| 111 | +[5.3. v2.1.0 beta 1](#53-v210-beta-1) |
108 | 112 |
|
109 | 113 |
|
110 | 114 | ## 1. Introduction
|
@@ -490,6 +494,25 @@ Output: -
|
490 | 494 | Corrupts: AF
|
491 | 495 | ```
|
492 | 496 |
|
| 497 | +#### 4.2.9 PROMPT (41E8h) |
| 498 | + |
| 499 | +Starting with Nextor kernel 2.1.0 you can call the PROMPT routine to display a "Insert disk for drive X: and strike a key when ready" message and wait for the user to press a key. This routine is available at address 41E8h in the main bank, and you can invoke it using [CALLB0](#423-callb0-403fh) as follows: |
| 500 | + |
| 501 | +``` |
| 502 | +PROMPT: equ 41E8h |
| 503 | +CODE_ADD: equ 0F1D0h |
| 504 | +CALLB0: equ 403Fh |
| 505 | +
|
| 506 | + ld hl,PROMPT |
| 507 | + ld (CODE_ADD),hl |
| 508 | + call CALLB0 |
| 509 | +``` |
| 510 | + |
| 511 | +The following work area is used by this routine: |
| 512 | + |
| 513 | +* The zero-based drive number is taken from TARGET, at address F33Fh. |
| 514 | +* The H.PROMPT hook at address F24Fh is called with the zero-based drive number in A before the routine is executed. |
| 515 | + |
493 | 516 | ### 4.3. The driver header
|
494 | 517 |
|
495 | 518 | The driver header is the first part of a Nextor driver. It contains some information that helps Nextor to identify the driver and determine its type.
|
@@ -613,7 +636,7 @@ Please note also the following:
|
613 | 636 |
|
614 | 637 | #### 4.4.4. DRV_BASSTAT (4139h)
|
615 | 638 |
|
616 |
| -This is the entry for the BASIC extended statements ("CALLs") handler. It works the same way as the standard handlers (see [MSX2 Technical Handbook, chapter 2](https://github.com/Konamiman/MSX2-Technical-Handbook/blob/master/md/Chapter2.md), for details), except that if the handled statements have parameters, the MSX BIOS routine CALBAS (needed to invoke the MSX BASIC interpreter helper routines) can't be used directly; instead, it must be invoked via [the CALLB0 entry](#423-callb0-403fh) in kernel page 0. |
| 639 | +This is the entry for the BASIC extended statements ("CALLs") handler. It works the same way as the standard handlers (see [MSX2 Technical Handbook, chapter 2, "Expansion of CMD command"](https://github.com/Konamiman/MSX2-Technical-Handbook/blob/master/md/Chapter2.md), and [MSX2 Technical Handbook, chapter 5, "Developing Cartridge Software"](https://github.com/Konamiman/MSX2-Technical-Handbook/blob/master/md/Chapter5.md) for details), except that if the handled statements have parameters, the MSX BIOS routine CALBAS (needed to invoke the MSX BASIC interpreter helper routines) can't be used directly; instead, it must be invoked via [the CALLB0 entry](#423-callb0-403fh) in kernel page 0. |
617 | 640 |
|
618 | 641 | If the driver does not handle BASIC extended statements, it must simply set the carry flag and return.
|
619 | 642 |
|
@@ -977,7 +1000,8 @@ The information to be returned is a 12 byte block with the following structure:
|
977 | 1000 | bit 0: 1 if the medium is removable
|
978 | 1001 | bit 1: 1 if the medium is read only
|
979 | 1002 | bit 2: 1 if the logical unit is a floppy disk drive
|
980 |
| - bits 3-7: Unused, must be zero |
| 1003 | + bit 3: 1 if the logical unit should not be used for automapping |
| 1004 | + bits 4-7: Unused, must be zero |
981 | 1005 | +8 (2): Number of cylinders
|
982 | 1006 | +10 (1): Number of heads
|
983 | 1007 | +11 (1): Number of sectors per track
|
@@ -1020,12 +1044,18 @@ This section contains the change history for the different versions of Nextor. O
|
1020 | 1044 |
|
1021 | 1045 | This list contains the changes for the 2.1 branch only. For the change history of the 2.0 branch see the _[Nextor 2.0 Driver Development Guide](../../../blob/v2.0/docs/Nextor%202.0%20Driver%20Development%20Guide.md#5-change-history)_ document.
|
1022 | 1046 |
|
1023 |
| -### 5.1. v2.1.0 beta 2 |
| 1047 | +### 5.1. v2.1.0 final |
| 1048 | +
|
| 1049 | +- [LUN_INFO](#464-lun_info-4169h) can now return a flag indicating that the device/LUN should not be used for automapping. |
| 1050 | +
|
| 1051 | +- Added the [PROMPT](#429-prompt-41e8h) routine. |
| 1052 | +
|
| 1053 | +### 5.2. v2.1.0 beta 2 |
1024 | 1054 |
|
1025 | 1055 | - **BREAKING CHANGE:** The address of CODE_ADD, used by [the CALLB0 routine](#423-callb0-403fh), has changed to F1D0h (it was F84Ch).
|
1026 | 1056 |
|
1027 | 1057 | - Fix: there was Nextor kernel code in the 1K free area in pages 0 and 3, so putting anything here caused problems, e.g. DOS 1 mode didn't work.
|
1028 | 1058 |
|
1029 |
| -### 5.2. v2.1.0 beta 1 |
| 1059 | +### 5.3. v2.1.0 beta 1 |
1030 | 1060 |
|
1031 | 1061 | Added the "User is requesting reduced drive count" flag to the input of [the DRV_INIT routine](#443-drv_init-4136h) and [the DRV_CONFIG routine](#448-drv_config-4151h).
|
0 commit comments