summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-06-06see last try.Ori Bernstein
2021-06-06distproto: sync with hgOri Bernstein
2021-06-06git/branch: diff clean and dirty lists correctlyOri Bernstein
no spaces in our lists.
2021-06-06git/branch: revert optimization fullyOri Bernstein
it doesn't help *that* much, and confuses the code.
2021-06-06git/branch: somewhere in the syncing, the fix for junk files was lostOri Bernstein
bring it back.
2021-06-06git/send: allow the remote to have refs that we don'tOri Bernstein
It's not fatal for someone else to push a branch with objects that we don't have. We should deal with it gracefully, and act as though it doesn't exist.
2021-06-06git/commit: allow passing absolute pathsOri Bernstein
we would treat paths as relative, and not step past leading '/'s, leading to an infinte loop.
2021-06-06sysupdate: revert thumbstone temporarilycinap_lenrek
experiencing some issues with git9 transition... we likely need to update git9 again before doing another attempt...
2021-06-05git/branch: merge correct set of filesglenda
we were switching branches before we got the full list of modified files, which could garble what we were trying to merge.
2021-06-05git/{branch,pull}: merge files correctlyOri Bernstein
merge1 would clobber the global '$base' variable, which is not what we wanted. Run it in a subshell with its own env.
2021-06-05distproto: remove .hgnore and .hg and add .git directoryglenda
2021-06-05git: handle absolute paths betterOri Bernstein
we were catting $gitrel onto absolute paths. stop it.
2021-06-05sysupdate: insert tombstoneOri Bernstein
after this update, we're on git: update sysupdate to switch repositories.
2021-06-05mergeAlex Musolino
2021-06-05upas/Mail: fix bug where Redraw must be executed twice to have an effectAlex Musolino
In showlist, call bwindata instead of bwinopen in order to use a pre-existing fd to write to the data file. This existing fd will properly honour any address set by a previous write to the addr file. Specifically, the redraw function sets addr to "," before calling showlist in order to overwrite the entire contents of the window.
2021-06-04git: allow local repository directories as remote uri'scinap_lenrek
This is implemented by checking first if the uri is a directory containing the .git/ subdirectory. If this is the case, we fork git/serve serving the repository on a pipe.
2021-06-04git/serve: remove undocumented -n namespace option and -r /usr/git defaultcinap_lenrek
This makes it easier to serve local repositories where the sandboxing gets in the way.
2021-06-03git/log: show first commit as file changeOri Bernstein
We checked if the file was changed from its parents. If there were no parents, the answer was no, but it should be yes.
2021-05-31git/init: create fs dirOri Bernstein
2021-05-31git/send: pick minimal delta set correctly (thanks igor)Ori Bernstein
We weren't giving all objects to the twixt() function, and it was making bad life choices -- gambling, smoking, drinking, and packing in too much data. With more information, it doesn't do the last.
2021-05-31sdvirtio: accept multi-queue devicesOri Bernstein
Sdvirtio supports multiple queues per device. We only use one queue, but we shouldn't skip the devices because of that.
2021-05-30git/branch: ...all the debug prints.Ori Bernstein
2021-05-30git/branch: remove debug printsOri Bernstein
2021-05-30git/branch: reduce execs to sync working dirOri Bernstein
We were execing a lot to copy the data -- do less of it.
2021-05-30git/fs: move mount point to $repo/.git/fsOri Bernstein
Moving the mount point to within the repo directory means that we can have multiple git repos mounted at once with no conflict.
2021-05-30vac: add -t flag to exclude temporary files and directories (thanks foura)cinap_lenrek
2021-05-30[9front] vga: Add U+29FA DOUBLE PLUS (thanks jmi2k)cinap_lenrek
2021-05-29mergecinap_lenrek
2021-05-29kernel: use 64-bit virtual entry point for expanded header, document ↵cinap_lenrek
behaviour in a.out(6) For 64-bit architectures, the a.out header has the HDR_MAGIC flag set in the magic and is expanded by 8 bytes containing the 64-bit virtual address of the programs entry point. While Exec.entry contains physical address for kernel images. Our sysexec() would always use Exec.entry, even for 64-bit a.out binaries, which worked because PADDR(entry) == entry for userspace pointers. This change fixes it, having the kernel use the 64-bit entry point and document the behaviour in the manpage.
2021-05-28zuke: treat toggle as play in stopped stateSigrid
2021-05-27zuke: fix seeking in paused modeSigrid
2021-05-23mkpaqfs(8): allow setting compression levelcinap_lenrek
2021-05-20/sys/lib/kbmap/colemak: map capslock to backspace (thanks jacob wb)cinap_lenrek
2021-05-17git: add missing fileOri Bernstein
Forgot to add common.rc in the initial commit.
2021-05-179pfid(2): document Srv* in Req (thanks kjn)Ori Bernstein
This struct member is available for any user of the library, and is not part of our internal API. It should be documented.
2021-05-16git: got git?Ori Bernstein
Add a snapshot of git9 to 9front.
2021-05-15memory(2): mention tsmemcmp (thanks kemal)cinap_lenrek
2021-05-02ip/ftpd: Add explict and implicit FTPS support.foura
Removed: - Challenge reponse auth. - Noworld login. - Anonymous users writing files to /incoming.
2021-05-13libpanel: fix text sliding around in libpanel text entry widgets.james palmer
2021-05-12pc64: avoid getcr3() in mmuflushtlb()cinap_lenrek
it turns out that calculating physical address of pml4 is faster than reading the machine register, so pass it explicitely.
2021-05-12devvmx: remove unncessary locking in gotcmd() sleep test functioncinap_lenrek
2021-05-12vmx: fix 9p debug server and make it compatible to /proccinap_lenrek
The 9p debug server was broken as it assumed the first tree file added would have a qid of 0 (it has a qid of 1 as the root directory is using 0 already). Instead, just compare File* pointers and get rid of the table (less code). When passing 64-bit unsigned addresses as 64-bit signed file offsets, we have to make sure to not pass negative offsets (filtered out by kernel and lib9p)! This is solved by clearing and sign bit in encoding and 63-bit sign extension on decoding. Make the mem file writable (needed for acid). The 9p debug server provided a single directory containing mem and regs files. This patch renames the regs file (which is in vmx specific text format) to "xregs" and adds "regs" and "kregs" file which use the same format as exported by the kernels /proc filesystem. This allows one to bind the vmx directory over a proc directory and attach acid to a running system like: mount -b /srv/vmx /proc/1 acid -k -lkernel 1 /sys/src/9/pc64/9pc64
2021-05-12vmx: avoid strdup() register names for register cachecinap_lenrek
If we tokenize the register file contents in a static buffer, we can avoid having to duplicate the register names. All callers to rpoke() provide constant register arguments so they also do not need to be duplicated.
2021-05-12vmx: implement long mode page table translationcinap_lenrek
This allows vmx to translate virtual addresses to physical when the gues runs in long mode.
2021-05-09iwhois: add some improvements (thanks gall0ws)cinap_lenrek
patch from gall0ws: > It's impossible to get whois right and probably nobody cares about it, > nevertheless this small patch fixes some issues with the current version: > > * use a more common filter for default boilerplate (useful when > following the referral chain) > * updated boilerplate for *.co.uk *.net.uk *.org.uk > * added case *.com *.net (got it from iana.org) > * use ARIN for IPv6 addresses > * when unsure, check first whether whois.nic.$tld exists otherwise > usual fallback to InterNIC > * fixed regexp for the referral chain (case, extra spaces or /) - add usage handling. -- cinap
2021-05-05games/opl3: use correct sampling rateqwx
games/dmid uses the same sample rate as the chip for music, but other applications do not. opl3 and its older version opl2 (not in 9front) read an input stream of commands in basically IMF format, something used in other id Software games and some others, which assumes a given input sampling rate: 700 Hz for Wolfenstein 3D music, 560 Hz for Commander Keen, 60 Hz for Ultima 6, etc. The opl3 emulation on the other hand is not really intended to run at a sampling rate different that the chip's 49.716 kHz sampling rate. Previously, we assumed it runs at 44.1 kHz and just used the input rate as a divisor to get the number of samples per delay tic. From what I understand, the correct way to use it for accurate emulation is to run the opl chip emulator at its intended sampling frequency, then downsample to 44.1 kHz. This means better output but more code. The alternative is to basically do the same as before rev 8433, except with no buffering, but at accuracy/quality loss. This change implements the former and just forks pcmconv to deal with resampling.
2021-05-05mergecinap_lenrek
2021-05-05cpu: properly handle end of file in readstr()cinap_lenrek
2021-05-04zuke(1): more fixes (thanks humm)Sigrid
2021-05-04zuke(1): engrish (thanks qwx)Sigrid