Hi, all,
I made a patch for proper Ctrl-Break handling. This is useful for MS-DOS
or compatible operating systems like FreeDOS.
When Ctrl-Break is detected, it clears the keyboard buffer, sets the
Ctrl-Break flag at [0040h:0071h], invokes int 1Bh and then adds h to
the keyboard buffer. I
y is to run "git format-patch", but "git diff" is also fine.
Please do include a "Signed-off-by" line in your commit message or
email message though.
ok:
Signed-off-by: Nikolay Nikolov
+asm volatile ("int $0x1B":::"memory");
Can th
configured)
hardware.
Signed-off-by: Nikolay Nikolov
---
src/hw/pic.c | 108
+---
src/post.c | 20 ---
src/romlayout.S | 18 --
3 files changed, 135 insertions(+), 11 deletions(-)
diff --git a/src/hw/pic.c b/src/hw
will be
added in the future.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 83 +++--
1 file changed, 69 insertions(+), 14 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index f2577c5..674909d 100644
--- a/src/hw/floppy.c
On Tue, 2018-01-30 at 22:23 -0500, Kevin O'Connor wrote:
> On Tue, Jan 30, 2018 at 05:41:47AM +0200, Nikolay Nikolov wrote:
> > Several fixes to the floppy driver, so it works on a real floppy
> > controller
> > with a real floppy. Tested with Coreboot on a motherbo
Sorry, forgot to reply to one of the small points in my other mail.
On 01/31/2018 05:23 AM, Kevin O'Connor wrote:
// Send the specified command and it's parameters to the floppy controller.
static int
@@ -302,9 +310,12 @@ static int
floppy_enable_controller(void)
{
dprintf(2, "F
On Sat, 2018-02-03 at 00:09 +0200, Nikolay Nikolov wrote:
> On Tue, 2018-01-30 at 22:23 -0500, Kevin O'Connor wrote:
> >
> > > @@ -199,8 +205,9 @@ floppy_wait_irq(void)
> > > {
> > > u8 frs = GET_BDA(floppy_recalibration_status);
> >
BIOSes do.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 8 +---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index acaff3f..6714402 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -34,6 +34,7 @@
#define FLOPPY_GAPLEN 0x1B
The new function is called after each floppy operation (except controller
reset) and resets the floppy motor counter in BDA to FLOPPY_MOTOR_TICKS
(about 2 seconds).
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 35 ---
1 file changed, 28 insertions(+), 7
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 17 -
1 file changed, 12 insertions(+), 5 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 573c45f..b5bc114 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -337,6 +337,16 @@ floppy_enable_controller(void
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 9c44a58..f45676e 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -193,6 +193,12 @@ floppy_dor_write(u8 val)
SET_LOW
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 17 +
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index f45676e..992983d 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -35,6 +35,15 @@
#define FLOPPY_FORMAT_GAPLEN
m not completely sure whether this is necessary. It is
done just in case some hardware introduces a delay between setting this bit
and actually enabling the IRQ, which would cause us to miss the IRQ, sent by
the controller immediately after reset.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.
Sorry, I missed one commit here. Please disregard this thread and see
my next patch series.
Nikolay
On Sat, 2018-02-03 at 19:32 +0200, Nikolay Nikolov wrote:
> Signed-off-by: Nikolay Nikolov
> ---
> src/hw/floppy.c | 8 +++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 17 +
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index f45676e..992983d 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -35,6 +35,15 @@
#define FLOPPY_FORMAT_GAPLEN
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 17 -
1 file changed, 12 insertions(+), 5 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 573c45f..b5bc114 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -337,6 +337,16 @@ floppy_enable_controller(void
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 9c44a58..f45676e 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -193,6 +193,12 @@ floppy_dor_write(u8 val)
SET_LOW
BIOSes do.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 8 +---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index acaff3f..6714402 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -34,6 +34,7 @@
#define FLOPPY_GAPLEN 0x1B
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index f2577c5..9c44a58 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -180,6 +180,12 @@ find_floppy_type(u32 size)
u8
The new function is called after each floppy operation (except controller
reset) and resets the floppy motor counter in BDA to FLOPPY_MOTOR_TICKS
(about 2 seconds).
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 35 ---
1 file changed, 28 insertions(+), 7
m not completely sure whether this is necessary. It is
done just in case some hardware introduces a delay between setting this bit
and actually enabling the IRQ, which would cause us to miss the IRQ, sent by
the controller immediately after reset.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.
On Sat, 2018-02-03 at 15:17 -0500, Kevin O'Connor wrote:
> On Sat, Feb 03, 2018 at 07:46:11PM +0200, Nikolay Nikolov wrote:
> > The problem with using floppy_motor_counter was that, after it
> > reaches 0,
> > it immediately stops the floppy motors, which is not what is
On Sat, 2018-02-03 at 14:12 -0500, Kevin O'Connor wrote:
> On Sat, Feb 03, 2018 at 07:46:09PM +0200, Nikolay Nikolov wrote:
> > Signed-off-by: Nikolay Nikolov
> > ---
> > src/hw/floppy.c | 17 -
> > 1 file changed, 12 insertions(+), 5 deletions
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index f2577c5..9c44a58 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -180,6 +180,12 @@ find_floppy_type(u32 size)
u8
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 573c45f..77dbade 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -356,6 +356,7 @@ floppy_drive_pio(u8 floppyid, int command, u8 *param
BIOSes do.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 9 +
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 77dbade..3012b3a 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -34,6 +34,7 @@
#define FLOPPY_GAPLEN 0x1B
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 17 +
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index f45676e..992983d 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -35,6 +35,15 @@
#define FLOPPY_FORMAT_GAPLEN
m not completely sure whether this is necessary. It is
done just in case some hardware introduces a delay between setting this bit
and actually enabling the IRQ, which would cause us to miss the IRQ, sent by
the controller immediately after reset.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 9c44a58..f45676e 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -193,6 +193,12 @@ floppy_dor_write(u8 val)
SET_LOW
This replaces patches 5 and 6 from the previous patch series as per
your suggestion.
Nikolay
On Sun, 2018-02-04 at 17:27 +0200, Nikolay Nikolov wrote:
> Signed-off-by: Nikolay Nikolov
> ---
> src/hw/floppy.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/src/hw
This is the same as patch 7 from the previous series, except it also
removes the line "SET_BDA(floppy_motor_counter, FLOPPY_MOTOR_TICKS);"
from floppy_enable_controller().
Nikolay
On Sun, 2018-02-04 at 17:27 +0200, Nikolay Nikolov wrote:
> The problem with using floppy_motor_cou
On 02/08/2018 04:23 AM, Kevin O'Connor wrote:
On Sun, Feb 04, 2018 at 05:26:56PM +0200, Nikolay Nikolov wrote:
Signed-off-by: Nikolay Nikolov
Thanks. I made some minor changes to the commit messages and
committed this series.
Thanks. I'll prepare the rest of the patches, nee
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 22 --
1 file changed, 20 insertions(+), 2 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 16989c2..5a7e6b9 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -35,6 +35,8 @@
#define
4 - Drive Polling of the Intel 82077AA
datasheet.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 15 ++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 21389bc..d80851b 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 5a7e6b9..730aadc 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -358,7 +358,7 @@ floppy_drive_pio(u8 floppyid, int command, u8
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 3012b3a..16989c2 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -328,6 +328,8 @@ floppy_enable_controller(void)
dprintf(2
completes).
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 13 +++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 730aadc..21389bc 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -37,6 +37,7 @@
#define
Nikolov wrote:
> Signed-off-by: Nikolay Nikolov
> ---
> src/hw/floppy.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/src/hw/floppy.c b/src/hw/floppy.c
> index 3012b3a..16989c2 100644
> --- a/src/hw/floppy.c
> +++ b/src/hw/floppy.c
> @@ -328,6 +328,8 @@
On Fri, 2018-02-09 at 23:35 -0500, Kevin O'Connor wrote:
> On Fri, Feb 09, 2018 at 02:31:02AM +0200, Nikolay Nikolov wrote:
> > When starting up the floppy motor, wait for a certain amount of
> > time, so
> > that it can spin up and reach a stable speed. This delay is
>
The previous version allowed for only two floppies.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 5a7e6b9..730aadc 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -358,7 +358,7
4 - Drive Polling of the Intel 82077AA
datasheet.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 15 ++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 933e5c0..9e6647d 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 3012b3a..16989c2 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -328,6 +328,8 @@ floppy_enable_controller(void)
dprintf(2
completes).
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 13 +++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 730aadc..933e5c0 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -37,6 +37,7 @@
#define
The SPECIFY command sets the Step Rate Time, Head Load Time, Head Unload Time
and the DMA enable/disable bit.
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 22 --
1 file changed, 20 insertions(+), 2 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index
hardware
(during reset).
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 1120d63..c85615b 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -230,7 +230,6 @@ floppy_clear_irq_flag
Signed-off-by: Nikolay Nikolov
---
src/hw/floppy.c | 11 +--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 9e6647d..1120d63 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -220,11 +220,18 @@ floppy_disable_controller(void
On Sun, 2018-02-25 at 18:33 -0500, Kevin O'Connor wrote:
> On Sun, Feb 25, 2018 at 10:38:09PM +0200, Nikolay Nikolov wrote:
> > This ensures that we safely receive the IRQ even if the floppy
> > controller
> > manages to be faster than our code and sends the IRQ
47 matches
Mail list logo