Commit Graph

166 Commits

Author SHA1 Message Date
leo 4b5bff0d0f During a rather lengthy debug session with Markus Kilbinger (Thanks again!),
we managed to kill the following SCSI-driver bugs for the Falcon:
   - The Byte_Count_zero bit of the falcon DMA controller does not always
     tell the truth! This caused the SCSI-driver to choke on devices that
     disconnected in the middle of a DMA-transfer (mostly removables).
   - Printing debug info about the 5380 on the Falcon is *only* permitted
     when DMA is not active.
   - Some functions forgot to remove possibly pending sofware interrupts
   - Some debug options didn't allow debugging a single target while they
     could easily be made to do so. This is fixed.
1996-07-05 19:35:35 +00:00
leo f1af6a2252 Add missing spl0() call. 1996-07-05 19:22:21 +00:00
leo 1301d25702 Pull down from release. Sorry, should have been the other way around.... 1996-06-18 11:10:04 +00:00
leo d84f4c4b18 Add tty_attach() calls. 1996-06-18 05:54:59 +00:00
leo 0b59a91269 Add missing spl(x). (Jason Thorpe) 1996-05-30 13:41:58 +00:00
leo b4ca145026 Get in sync with the mac68k version of the 5380 driver. Also increase
the maximum values of wait_req_xx() functions so some old (slow) scsi-1 drives
will work.
1996-05-15 09:21:29 +00:00
leo dd8fd30935 Prototype + -Wall fixes. 1996-05-15 07:28:51 +00:00
leo 5f0e599c40 Remove a line of debugging code. 1996-05-14 10:25:01 +00:00
leo b26b45a14d Corrections for removed <sys/cpu.h> and some more prototypes. 1996-04-26 06:59:15 +00:00
leo 7f0e5ecf77 - Fixup the ipending function for the Falcon. This seemed to be the source
of a lot of instability problems on the Falcon. I also enabled DMA on
  interrupt basis for the Falcon.
- Try to handle targets that request too much data more sanely.
- Some fixups for strict prototypes + -Wall

Thanks to Markus Kilbinger for providing the debugging support.
1996-04-26 06:50:12 +00:00
leo df8c6afda1 Ignore joystick packages when running in 3b. emulation mode. 1996-04-23 11:02:01 +00:00
leo 18dd6b0909 Prototypes. 1996-04-19 20:35:31 +00:00
leo b3fadef7e0 Yet more prototyping and -Wall fixes. 1996-04-18 08:51:11 +00:00
leo 6e40f439fc Part of restructuring done for 3-button mouse support. 1996-04-12 19:55:28 +00:00
leo 658385632c Prototyping. 1996-04-12 09:05:14 +00:00
leo 9402dcae81 Add 3-button mouse support. 1996-04-12 08:39:22 +00:00
leo e4a9d09efb Add 3-button mouse support. 1996-04-12 08:37:03 +00:00
christos 933d138841 Change %r -> %: as for recursive printf's 1996-03-30 21:01:21 +00:00
leo ccde176c63 Small nits because of changes in ym2149 handling. 1996-03-27 12:15:28 +00:00
leo 28e46e648f Add centronics printer driver. 1996-03-27 10:20:44 +00:00
leo 72e826cbd4 Remove rd_match_hook(). 1996-03-27 10:13:09 +00:00
leo c5a7f4e977 Take out direct access to the YM2149. The chip definitions are moved
from video.h to ym2149reg.h.
1996-03-27 10:07:45 +00:00
leo 8106a55133 And more proto's..... 1996-03-20 13:11:56 +00:00
leo e0aeb3dc13 Another bit of prototyping... 1996-03-20 12:41:30 +00:00
leo 7b7df70d77 Fix typo in neew config changes. 1996-03-20 08:17:48 +00:00
leo 38432e7448 Debugger() prototype is in systm.h, don't define Debugger() here. 1996-03-19 13:15:34 +00:00
thorpej 82d914d090 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 01:26:49 +00:00
thorpej 5c67e5fad9 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 01:16:48 +00:00
leo 55b65fb49a Switch to the mi ramdisk driver. 1996-03-14 21:41:04 +00:00
leo 7da79507e9 Take the type of the attached monitor into account when selecting a
display-mode. Includes hack to make things work on non-VGA monitors.
1996-03-10 11:42:35 +00:00
leo 77e4824146 Just prototyping. 1996-03-08 21:54:53 +00:00
leo a91a46bc0f When having a perfect match on the resolution, try to match the screen
depth as best we can.
1996-03-08 21:52:50 +00:00
leo bb2b6106da Fix a bug in the DCD handling. Because the state of the DCD line was
kept in a soft-copy that wasn't initialized on open, it sometimes happend
that a change of the carrier got lost. Also fixed some prototypes.
1996-03-08 21:50:40 +00:00
leo db7d722c4b A bit of reshuffling. Also some stricter prototyping. 1996-02-22 21:07:05 +00:00
leo c9dfd5cb44 First bunch of changes due to stricter prototype checking. 1996-02-22 10:10:44 +00:00
leo 2708c1593e Oops, should have been updated in conjunction with ncr5380.c . 1996-02-14 08:09:47 +00:00
leo 35d120d71d Some extra range-tests on the RTC values. 1996-02-11 12:42:19 +00:00
leo 8d7918526b Various small fixes. 1996-02-10 22:10:45 +00:00
mycroft 9d9a70a5a2 Fix #includes. 1996-02-02 18:05:36 +00:00
gwr c2c1c1b11a Move struct definitions to MD code. 1996-01-24 19:21:40 +00:00
leo 1481622cdb Fixes 'hanging' problem when closing a serial port. 1996-01-23 09:35:15 +00:00
leo 9186c7668f The changes frpm Paul Goyette with respect to the driver trace require
DBG_PID to be defined to an interger value....make it so.
1996-01-14 13:06:37 +00:00
thorpej 5b39541e48 New generic disk framework. Highlights:
- New metrics handling.  Metrics are now kept in the new
	  `struct disk'.  Busy time is now stored as a timeval, and
	  transfer count in bytes.

	- Storage for disklabels is now dynamically allocated, so that
	  the size of the disk structure is not machine-dependent.

	- Several new functions for attaching and detaching disks, and
	  handling metrics calculation.

Old-style instrumentation is still supported in drivers that did it before.
However, old-style instrumentation is being deprecated, and will go away
once the userland utilities are updated for the new framework.

For usage and architectural details, see the forthcoming disk(9) manual
page.
1996-01-07 22:01:38 +00:00
leo 57a3b5b00c Keep more debugging history (Paul Goyette). Synced with mac68k version. 1996-01-06 20:17:15 +00:00
leo 356a61ab95 Add an nvram-driver. This driver makes it possible to read/write the
configuration info stored in the nvram on the mc146818.
1996-01-06 20:10:41 +00:00
leo c8574c59f7 Allow selection of Falcon (videl) video modes other than the mode selected
on startup (Thomas Gerner).
1996-01-02 20:59:20 +00:00
leo b46db7160c - Remove an unwanted interference between the 2 channels.
- Allocate the ringbuffer on a channel's first open.
1995-12-25 14:16:50 +00:00
leo 1e5442c0ba Fixes for devices that don't support linked commands. (Paul Goyette) 1995-12-18 20:37:51 +00:00
leo 64f1b42bb4 Correct PCLK value. 1995-12-16 21:45:31 +00:00
leo 8dff161947 Make sure that the motor will be turned off when a floppy is inserted. 1995-12-10 14:25:12 +00:00
leo 70875fa68f Return a more sensible errno when someone is trying to set the unsupported
mdmbuf option.
1995-12-03 14:32:39 +00:00
leo ca1cc64e20 Remove forgotten #endif 1995-12-01 19:51:53 +00:00
leo 291d8cbf3a Add kernel option for separate {stat,prof}clock 1995-11-30 21:52:46 +00:00
jtc 0cd793449e merge in changes from 1.1 release branch 1995-11-30 00:56:23 +00:00
leo 3b8542c63a The Falcon needs a delay after writing the dma_data register (Thomas Gerner) 1995-11-06 21:13:38 +00:00
leo ebc6d5a705 Use general bound-check function. 1995-10-14 20:17:46 +00:00
leo 0e5fe20560 - Cleanup the arbitration
- Make sure the MON_BUSY flag is cleared after a DMA transfer. Otherwise
  we might end up with a 'lost-busy' situation unexpectedly. This will
  prevent the 5380 from driving the bus, which is not funny during
  reselections.
1995-10-08 13:34:23 +00:00
leo 7d3bc89420 Get in sync with the mac68k version to incorporate Allen Briggs' changes
- emit MSG_ABORT/MSG_REJECT at the right times:
 - make MIN_PHYS machine dependent.
1995-10-05 08:52:53 +00:00
leo 7af927b56d Make sure the prototypes and inline definitions are included. 1995-09-23 20:29:16 +00:00
leo f28a41635b Make them compliant to iso-8859-1 (Thomas Gerner). 1995-09-23 20:25:34 +00:00
leo c150cc4d37 PROF -> GPROF 1995-09-23 20:23:28 +00:00
leo a2a0fe9c66 - Handle devices that do not support identify messages (Allen Briggs)
- Add pdma_ready() hook (Allen Briggs)
- Increase timeout to 1000 (Matthias Pfaller)
1995-09-16 14:15:10 +00:00
leo e34d65cb12 - Fix a timing bug in the loop, that was introduced in the previous version.
- Added some code to reject unsupported messages correctly.
1995-09-12 19:58:53 +00:00
leo 7640742d5b Fix possibly endless loop (mycroft) and add fix requested by Allen Briggs. 1995-09-05 07:02:21 +00:00
leo eb9d1db57a Right align color values in the bytes. 1995-09-04 19:41:39 +00:00
leo eee0dbbda7 Allow chars > 0x7f to be displayed on the ite's 1995-09-04 19:39:21 +00:00
leo 9c9abeb6c3 Add Falcon video support. Thanks to Thomas Gerner. 1995-08-20 18:17:09 +00:00
leo 34e65502e7 - make sure that there is 1 pending software interrupt max.
- read status before character, so the status won't be lost (Thomas Gerner)
- accumulate as much interrupts as possible in zshard()
1995-08-20 13:28:10 +00:00
leo 6b9a15416a - Add 'restbyte' handling for TT.
- Don't _ever_ do DMA for less than 512 bytes on the Falcon
- Fix bug in autosense-handling. Now asks for the correct number of bytes.
  Now it won't read ghost bytes on the tape anymore.
- Add missing braces as suggested by Matthias Pfaller
- Make it possible to debug requests on a specified number of targets
- Add debug option to show only transaction with error code != 0
1995-08-19 12:36:21 +00:00
leo 44d433786d Remove 2 wrong proto-types. 1995-08-17 20:32:50 +00:00
mycroft 80d7b0695a minphys() functions really should return void. 1995-08-12 20:30:45 +00:00
leo 24644e5151 New version of NCR5380-SCSI driver. This version is far more generic than
the previous version. The machine dependent part contains the configuration
for both the TT and FALCON. The configuration files have been changed to
select SCSI-support for either TT, Falcon or both.
The configuration file for the Atari-Falcon will only get _really_ usefull
when the Falcon video part is finished.
1995-08-11 20:01:15 +00:00
leo cd73c9f0cb Add middle button emulation. 1995-07-27 06:35:46 +00:00
leo 2826d4fa30 A forgotten file for the kbdmap fixes. 1995-07-25 13:49:26 +00:00
cgd ffe4785a58 update SCSI minphys routines' definitions to match standard minphys()
definition and usage.
1995-07-24 07:33:32 +00:00
cgd da9c1b5e48 fix minphys so that it actually works properly 1995-07-24 07:31:45 +00:00
leo 052e19d7fd Change and fix the way of keyboard mapping. Each virtual console has it's
own private keymap, initialized on open from the system-keymap. Both
system and private keymaps are settable.
1995-07-24 05:56:06 +00:00
leo 8e01fc80af Update raw-io functions as suggested by Charles. 1995-07-12 21:41:03 +00:00
leo b87c200b08 - Change character interface as suggested by Charles
- HD floppies really have 2 sides ;-)
- Cleanup drive/density selection
1995-07-11 18:32:07 +00:00
cgd 2b71eae2c7 note that most of dev/ic's contents have changed names 1995-06-28 04:30:30 +00:00
leo abe8c288fb Sync grf with underlying view on open. 1995-06-26 19:55:45 +00:00
leo 0d1035fa62 Fix thinko. It will now also work when no mouse is configured. 1995-06-26 14:31:27 +00:00
leo 4abd54fe69 Mouse driver added. 1995-06-25 19:05:23 +00:00
leo 73c861e2e3 Handle mouse and other packages received from the keyboard correctly.
The initialisation now resets the keyboard and disables all packages
that make no sense because their drivers are not activated.
1995-06-09 20:00:14 +00:00
leo 91bada6a66 Fix grfmmap() 1995-06-09 19:55:13 +00:00
leo d8cb2b8dfa According to diffs from Waldi Raven:
Make speed/clock-source selection smarter. This makes the baudrates more
 accurate and allows speeds upto 115k baud.
1995-05-28 19:50:26 +00:00
leo 27a11d1735 Remove the pointer to view_t from the grf-structure, use viewview(dev)
to obtain the pointer instead. This removes a kernel-crash that happened
when something was written to the console while the console was being
resized.
1995-05-28 19:45:36 +00:00
leo d66ffa3fe1 Use <dev/ic/mc146818.h>. Change systemclock settings. Usable values for
HZ are now 48/64/96.  This reduces the interrupt overhead, because we
don't need the extra division by 4 in the interrupt handler.
1995-05-28 19:38:49 +00:00
leo a1006d16dd ite_newsize(): Do not reallocate a display when the actual display mode
will be the same. Fixes a nasty bug where ite0 and ite1 share the same
bitmap.
1995-05-21 11:00:13 +00:00
leo c8ca7ae526 Fix UL-handling 1995-05-21 10:56:54 +00:00
leo 13f71a235d Add prototype for grf_get_best_mode() 1995-05-21 10:55:57 +00:00
leo 02dd55abb3 - Add grf_get_best_mode()
- Only update 'real' colormap when actually displaying
- Fix TT-HIGH video mode
1995-05-21 10:54:44 +00:00
leo 555b2f67be Minor fixes. 1995-05-21 10:52:18 +00:00
leo b78d405c36 Don't mess with SCU on the Falcon. 1995-05-14 15:55:51 +00:00
leo 8360740fdb Change of function params for Falcon SCSI. 1995-05-14 15:47:17 +00:00
leo 84c03e6058 - Remove race condition from DMA interrupt handler
- Add function to get current DMA address for Falcon SCSI.
1995-05-14 15:46:17 +00:00
leo 231b64341e Fix bug on handling HD-floppy's. 1995-05-05 16:38:05 +00:00
leo 60f4c22869 Shift system clocks from TT-mfp to ST-mfp and remove some dead-code. 1995-05-05 16:31:46 +00:00
leo f677a89489 Small changes in dma locking code. 1995-04-30 12:06:01 +00:00
leo 12c60f7bc0 Complete rewrite, made necessary because Falcon SCSI needs to share
NCR5380 and DMA access with floppy.
1995-04-30 12:04:48 +00:00