Commit graph

4218 commits

Author SHA1 Message Date
cinap_lenrek 6cb93914f2 devvga: better way to prevent blank hwaccel race
don't hold drawlock duing vga enable and disable, but just zero
the function pointers under drawlock *before* disabling the vga
device.

holding the drawlock while calling out into enable and disable
is not a good idea. with vgavesa, this might deadlock when
userspace realemu tries to print in a rio window with vgavesa.
2015-01-02 17:07:47 +01:00
cinap_lenrek 9aec87c46c vgavesa: get rid of the vesa kproc
in 9front, screen blanking is always initiated from process context,
so there is no need for a kproc anymore.

care has been taken for the race between vesadisable() and vesablank()
by acquiering the drawlock prior calling scr->dev->enable() and
scr->dev->disable(). this also has the side effect of accelerated
fills and scrolls not being called during device disable.
2015-01-02 15:29:15 +01:00
ftrvxmtrx 7848fe5970 aux/vga: do not set mode 3 unless connected 2015-01-02 13:29:58 +01:00
ftrvxmtrx 8b9badd6a6 aux/vga: fix switching with different mode
Prior to switching display, switch to text mode 3, which
is supported by anything, then set display, search for the
desired mode, load it if found. If not found, set the display
to the old one and switch to the old mode back.
2015-01-02 13:24:27 +01:00
cinap_lenrek 96595f5101 nedmail: do not recursively plumb email multipart attachments in print command 2015-01-02 12:05:35 +01:00
ftrvxmtrx c5da8810ee nusb/kb: fix alt/altgr being swapped for some reason 2015-01-01 22:53:17 +01:00
ftrvxmtrx f1b1e0d637 aux/vga: display switching for Intel adapters
Magic was discovered by abusing INT 10 on several machines
while switching cables back and forth and watching the end result.
2015-01-01 16:19:24 +01:00
cinap_lenrek 9e45c8bc9b zynq: differentiate various pagefault types in faultarm() 2015-01-01 11:32:00 +01:00
ftrvxmtrx 04efb3a4a3 tcs: update charsets. Fixes issue #214 2015-01-01 11:20:23 +01:00
cinap_lenrek 6adf8466a2 hjfs: fix missing superblock dirty mark when reaming 2015-01-01 23:18:07 +01:00
aiju 941912f5ff hjfs: make -m default 4 MB instead of 40 KB 2014-12-31 20:04:10 +01:00
stanley lieber cfc0a3b904 terminus font: update .font files, remove references to old vga bitmaps 2014-12-30 01:17:26 -05:00
stanley lieber 96b09e8c3d lucidasans font: update font files, remove references to old vga bitmaps 2014-12-30 23:44:06 -05:00
stanley lieber cb95db4f68 germgoth/unicode.12.font: update mappings, remove references to old vga bitmaps 2014-12-30 18:27:25 -05:00
cinap_lenrek 66d1c9d169 bring back nice control character glyphs in vga font 2014-12-30 18:58:59 +01:00
cinap_lenrek cdf7520738 zynq: enable branch prediction 2014-12-30 15:49:44 +01:00
cinap_lenrek 080cc49f50 zynq: implement µs() 2014-12-30 15:17:27 +01:00
cinap_lenrek ed294a65cb zynq: enable prefetch hints and drop-prefetch 2014-12-30 15:16:46 +01:00
cinap_lenrek 9f880e595c libmemdraw: never point Buffer.alpha to nil (thanks mischief)
the boolcopy optimization doesnt doesnt use Buffer.alpha, tho
the debug function dumpbuf() still can dereference it. to keep
it simple, always have Buffer.alpha point to the channel or
&ones when not used.
2014-12-30 12:44:42 +01:00
ftrvxmtrx 5935eeb6de aux/vga: scale only if mode was set successfully 2014-12-29 16:43:33 +01:00
cinap_lenrek 11b5e0ac14 merge 2014-12-29 16:06:57 +01:00
cinap_lenrek cb2103879e zymq: lilu dallas, multicore
implement multiprocessor support.
2014-12-29 16:02:57 +01:00
cinap_lenrek e08cc06517 add games/md to /sys/src/games/mkfile 2014-12-29 11:55:51 +01:00
ftrvxmtrx 774065caaa aux/vga: rescale after loading new mode
Intel VBIOS seem to not update its state unless in graphical
mode, so set the scaling mode after loading new graphical mode.
2014-12-29 10:06:29 +01:00
mischief fa06413db4 libdraw: don't deference nil display in freefont 2014-12-28 23:11:21 -08:00
mischief f188158f1c libmemdraw: fix fd leak in openmemsubfont and memory leak in freememsubfont 2014-12-28 22:46:39 -08:00
mischief ba47daaab3 memlayer(2): fix memdraw signature 2014-12-28 12:14:24 -08:00
stanley lieber a852ff2cbe vga font: fix permissions (thanks, mischief) 2014-12-28 21:29:44 -05:00
stanley lieber 7c0026410a vga font: the existing bitmaps contained blank spaces for missing runes, which resulted in blanks being printed on screen. replace bitmaps and update .font files accordingly. 2014-12-28 15:29:02 -05:00
stanley lieber 21647f97e6 fortunes: no. -- ftrvxmtrx 2014-12-28 15:08:41 -05:00
ftrvxmtrx d908aff72f aux/vga: remove -s option, move scaling to the size string itself 2014-12-28 17:42:38 +01:00
mischief 31e1c15d44 ircrc: use aux/trampoline or tlsclient for connections, add -T flag for tls
previously ircrc dialed through /net itself and resolved ips on its own. this prevented the use of an ip address, and also prevented use of ipv6. now you can use an ip, or a dns name that resolves to ipv6. the -T flag is also added to use tlsclient for encrypted connections.
2014-12-27 23:38:21 -08:00
ftrvxmtrx dc69af5010 merge 2014-12-26 17:03:15 +01:00
ftrvxmtrx 0d5b33a9e8 aux/vga: scaling modes for VESA 2014-12-26 17:01:58 +01:00
ftrvxmtrx 04ec990b67 vga, vesa: revert. this needs to be in aux/vga instead 2014-12-26 16:10:45 +01:00
ftrvxmtrx 2cc7c72f8e vga, vesa: scaling modes
At least on some NVIDIA cards the default scaling mode makes
black borders visible on all sides, even on native resolution.
This patch adds a generic "scaling MODE" command to vgactl
and adds support for it on VESA through NVIDIA VBE OEM extension.
It hasn't been tested on any other video cards, but shouldn't
break anything as the scaling mode is only set on write to vgactl.
2014-12-26 15:40:06 +01:00
ftrvxmtrx 604f00d9bc vga, vesa: scaling modes 2014-12-26 15:24:07 +01:00
cinap_lenrek 7f5f69ebb5 socksd: revert back, previous commit broke UdpAssociate request
should probably figure out a better way to get public ip
address on a interface.
2014-12-26 11:41:53 +01:00
cinap_lenrek 7a54873252 libip: skip ipv6 loopback address (thanks mischief) 2014-12-26 09:34:30 +01:00
cinap_lenrek de349cf9b0 socksd: dont use myipaddr() for announcing address 2014-12-26 09:11:04 +01:00
cinap_lenrek 2ab042f11e getfcr: change getfcr/setfcr to use VFP 2014-12-25 17:44:49 +01:00
cinap_lenrek ed5c9fd00a zynq: only tmpmap() while splhi(), remove unneeded coherence() after tmpunmap(), splhi() in l2free()
we have to call tmpmap() with interrupts disabled as the map
is a per cpu and a interrupt can preempt us while we where
commited to use a entry but *before* we wrote it!

tmpunmap() already calls coherence() before flushpg() so it
is not needed after tmpunmap().

splhi() in l2free() isnt needed as l2free() is always called
with interrupts disabled from mmuswitch() and mmurelease().
2014-12-25 11:30:29 +01:00
cinap_lenrek 9b5387fbde zynq: dont do install target by default in the mkfile 2014-12-25 11:12:31 +01:00
cinap_lenrek 77e0feb67c zynq: fpsave() and fpclear() both need to disable the fpu
fpsave needs to disable the fpu! otherwise we won't catch
the mathtrap() in the kernel or when context switching to
another process that will attempt to use it.
2014-12-24 20:53:58 +01:00
cinap_lenrek 1c6daca577 zynq: active.machs = 1 2014-12-24 16:56:48 +01:00
cinap_lenrek aca053c18a zynq: set mainmem->maxsize so kernel malloc() wont fail after 4MB 2014-12-24 13:37:54 +01:00
cinap_lenrek 4e94094e94 5l: remove -f flag and add -F flag to disable VFP code generation
almost nobody uses FPA anymore, so make VFP the default but
provide -F flag to disable it.
2014-12-24 11:38:44 +01:00
cinap_lenrek 2ef69f42d8 zynq: fix kernel configuration so it builds 2014-12-24 11:20:40 +01:00
cinap_lenrek d1799f65ca nusb/serial: fix nusb/serial hang with ftdi
have to create process, not a thread in ftdi code so main
process can exit after posting fs service.
2014-12-24 11:04:18 +01:00
aiju 7a3f0998a0 added zynq kernel 2014-12-24 10:21:51 +01:00