Commit graph

  • 5f83fd85dc Don't try to use acct() on cygwin (which doesn't support it). Fixes: #111 David Given 2018-09-01 10:41:31 +0200
  • 8d321900b4
    Merge pull request #110 from davidgiven/dtrg-warnings David Given 2018-06-25 22:29:47 +0200
  • 7971bdba5a Warning-fixed and ansified the Modula-2 library. David Given 2018-06-25 22:22:37 +0200
  • f8ba7ef962 Move the Modula-2 library includes into a directory in lang/m2 where they belong. David Given 2018-06-24 20:32:59 +0200
  • aa19c08512
    Merge pull request #109 from davidgiven/dtrg-warnings David Given 2018-06-24 20:03:21 +0200
  • ab7002c0ee All the Linux include directories are the same, so common them all out into a single one, like OSX. David Given 2018-06-24 19:57:43 +0200
  • 47bdd9cc49
    Merge pull request #108 from davidgiven/dtrg-warnings David Given 2018-06-24 01:00:30 +0200
  • 1702d873ea Warning-fix and protoise the basic library. David Given 2018-06-24 00:35:51 +0200
  • a6742a7d55
    Merge pull request #107 from davidgiven/dtrg-libc David Given 2018-06-24 00:21:29 +0200
  • bbb98240fe Merge from trunk. David Given 2018-06-24 00:08:39 +0200
  • f45b357740 Remove the dependency on the glibc-only byteswap.h. David Given 2018-06-24 00:01:06 +0200
  • 1fc20e90c0 Remove c99-isms. David Given 2018-06-23 23:56:34 +0200
  • 205c8d0a35 Run through clang-format. David Given 2018-06-23 23:46:44 +0200
  • d1e9cd803b Enable OSX builds on Travis again. David Given 2018-06-23 23:29:13 +0200
  • 91a978fa95
    Merge pull request #106 from davidgiven/dtrg-libc David Given 2018-06-23 23:28:21 +0200
  • fd94e219d4 Remove the attic. David Given 2018-06-23 23:16:22 +0200
  • 59dbdea48a Move mktemp to sys; attic getgrent as noone will ever use this. David Given 2018-06-23 23:15:42 +0200
  • 3f10299f43 Move the portable time code into core. clock() goes into sys (as it calls times()). David Given 2018-06-23 19:49:29 +0200
  • 64ae1d7583 Move time() into sys; change the name of the variable which controls it. David Given 2018-06-23 19:40:50 +0200
  • bb78fd158c Move the big gnarly functions like system() and popen() into sys, and make them build. David Given 2018-06-23 19:18:16 +0200
  • 6a729b846a Move stdio into (mostly) sys. David Given 2018-06-23 18:54:40 +0200
  • af22b7ea85 Change stdio to use atexit() rather than the internal __clean variable; this breaks the dependency between exit/atexit and stdio. Buffers are no longer flushed on abort() (because it's pretty risky). Move the relevant functions into sys/core. David Given 2018-06-23 18:35:45 +0200
  • f744a21699 All the opendir()/readdir() stuff is obsolete because it's all implemented in terms of open() and read(), which isn't how it's done any more; move the functions into an attic. David Given 2018-06-23 18:25:26 +0200
  • df1cdf7762 Add the sys directory for libc functions which use system calls; move the malloc functions in there. David Given 2018-06-23 18:08:03 +0200
  • c4e4505a73 Move the errno functions into core. David Given 2018-06-23 17:52:15 +0200
  • 538eefb573 Get em22 working. Remove the leading-underscore system calls from its libsys. David Given 2018-06-23 15:57:57 +0200
  • 74d166ef9a Get the pdp7 plat working; remove the leading-underscore syscalls. David Given 2018-06-23 15:18:26 +0200
  • 3e40374297 Made the rpi platform work with the new libc layout. David Given 2018-06-23 13:05:27 +0200
  • dbb2062d03 Made pc86 work with the new libc. David Given 2018-06-23 12:59:40 +0200
  • 680b4071b7 Made the two OSX platforms work with the new libc layout. David Given 2018-06-23 12:55:59 +0200
  • b727b7affd Make linuxppc work. David Given 2018-06-23 12:41:54 +0200
  • b267b56ad9 Made linux68k work; commoned up all the generic linux includes. David Given 2018-06-23 12:35:17 +0200
  • 66815ff987 Make linux386 work with the new libc layout. David Given 2018-06-23 12:13:33 +0200
  • 32c881474e Create a basic and probably wrong common unistd.h, which replaces the plat one. Made this work with cpm (but nothing else yet). David Given 2018-06-23 11:46:55 +0200
  • dd0f959245 Move assert into core. David Given 2018-06-23 11:16:06 +0200
  • fe3951d4ae Warning fix. David Given 2018-06-23 11:14:49 +0200
  • fac0764621 Don't crash and burn if there are no tests to run. David Given 2018-06-23 11:14:40 +0200
  • 5fd8d772fd Move the string-to-float functions into core, after marking them as ACKCONF_WANT_FLOAT. David Given 2018-06-23 11:14:24 +0200
  • 94ffa3ba88 libc floating point and stdio floating point can now be turned on and off using ACKCONF variables. David Given 2018-06-23 00:04:14 +0200
  • 9bf1d548fc Rearrange the libc config files, ready for adding new options. David Given 2018-06-22 23:43:15 +0200
  • b21c099a57 Get the em libc working again: remove the modula-2 termcap library, as it's a straight copy of the libc one and having two symbols defined at once gets ass upset. David Given 2018-06-22 23:17:14 +0200
  • 035c9558e8 Merge from default. David Given 2018-06-22 22:43:02 +0200
  • 4cf3188fd1
    Merge pull request #105 from davidgiven/dtrg-ass David Given 2018-06-22 22:42:11 +0200
  • a0c6fea32c Replace fake-varargs, which doesn't work on 64-bit machines, with real varargs. David Given 2018-06-22 22:29:52 +0200
  • c5fd338300 Replace fake-varargs, which doesn't work on 64-bit machines, with real varargs. David Given 2018-06-22 22:29:52 +0200
  • c0276416d8 Move some more libc functions into core. David Given 2018-06-22 22:20:02 +0200
  • d1cdb07719 Realise that the libc core can safely call other libc core functions, even if they're not defined in the core: so putw() can call stdio stuff, for example. So the earlier concept of pureness isn't necessary. Rename accordingly. David Given 2018-06-21 23:24:23 +0200
  • 62025c92bd The ctype functions are pure. David Given 2018-06-21 23:06:29 +0200
  • d9d7ffe0d7 The maths library is pure. David Given 2018-06-21 23:00:33 +0200
  • f9c059812b Moved the setjmp functions into the new pure directoy. David Given 2018-06-21 22:55:42 +0200
  • 32f47b1d24 Move the pure locale functions into the new pure directory. David Given 2018-06-21 22:54:25 +0200
  • b9d2f353d9 Move the pure stdlib functions into the new pure directory. David Given 2018-06-21 22:52:31 +0200
  • 4dbdb7d8d5 Rethink the libc layout. David Given 2018-06-21 22:47:02 +0200
  • 83e1b2ad94 Move the str and mem functions into the new src/core. David Given 2018-06-21 22:39:08 +0200
  • 93f39e4bbf Run libcc.ansi through clang-format. David Given 2018-06-21 22:33:47 +0200
  • 60b7d8de6e
    Merge pull request #96 from kernigh/kernigh-emu-1 David Given 2018-06-20 22:30:01 +0200
  • 9eff7102e9
    Merge pull request #103 from davidgiven/dtrg-warnings David Given 2018-06-18 22:31:35 +0200
  • 698613cd7d Turns out that the compiler needs access to the libpc headers too; refactor into a separate target to avoid build loops and make it work. David Given 2018-06-18 22:17:38 +0200
  • 11854f4dfe Ansify and warning fix. David Given 2018-06-17 22:30:27 +0200
  • 5784f5fabe Run C files through clang-format. David Given 2018-06-17 16:11:29 +0200
  • 9ede428e3c Use cproto to extract all the prototypes. David Given 2018-06-17 16:10:57 +0200
  • 9947e7ac63 Added a pc.h to contain libpc prototypes; some ansification. David Given 2018-06-17 15:54:18 +0200
  • d1671fc2e3 Move the private Pascal headers into libpc where they belong. David Given 2018-06-17 15:44:33 +0200
  • 13e195d19f Warning fixes. David Given 2018-06-17 15:42:26 +0200
  • ce249649b2 Warning fix. David Given 2018-06-17 15:34:29 +0200
  • ddca7276c0
    Merge pull request #102 from davidgiven/dtrg-powerpc David Given 2018-06-17 11:45:26 +0200
  • 89e8956bb2 Fix edge case in rlwnm when the mask is 32 bits wide. All tests now pass. David Given 2018-06-17 11:00:01 +0200
  • 7ec9f54679 Turns out that andi and andis only have . forms. Fixed; another test passes. David Given 2018-06-17 10:43:39 +0200
  • 78eaf836be Turns out I was returning values from syscalls in the wrong register; fixed. More tests pass. David Given 2018-06-17 10:22:20 +0200
  • ab660a44e9 Lots of floating point, bugfixes, and system calls. Most of the tests pass now. David Given 2018-06-17 09:24:01 +0200
  • 67efbb5f7f Do a bit of floating point stuff; added brk(); fixed a horrible bug where stores with 16-bit displacements were storing the register number and not the contents of the register. David Given 2018-06-16 22:55:23 +0200
  • 5d7cdd2c67 Fix a setcr0 bug which was trashing the condition register; some system calls are now implemented. A few tests more-or-less pass (but crash on exit). David Given 2018-06-16 08:35:36 +0200
  • 39a49265ce
    Merge pull request #100 from kernigh/kernigh-pdp David Given 2018-06-15 15:40:24 +0900
  • 5db312a1c0 Prevent crash in isatty() George Koehler 2018-06-15 00:48:29 -0400
  • 5de5611c24 Use 2-byte alignment in pdpv7 to prevent SIGBUS. George Koehler 2018-06-15 00:17:12 -0400
  • 5111556d14 Got the emulator to the point where we're hitting the first major emulation bug (the calloc test hangs). David Given 2018-06-14 05:53:39 -0700
  • 853af4c4dd Some code runs (up to needing setcr0). David Given 2018-06-14 04:41:21 -0700
  • b71145f79d Implement a non-functional skeleton of the PowerPC emulator (with, hopefully, most of the instruction decode done). David Given 2018-06-14 03:07:36 -0700
  • c9e5190a12
    Merge pull request #99 from davidgiven/dtrg-ass David Given 2018-06-14 10:08:17 +0900
  • 519eef933c Merge from trunk. David Given 2018-06-13 21:47:25 +0900
  • 31c2ba3f94 File cleanup. David Given 2018-06-13 21:47:08 +0900
  • 7eaa235fd1 Bodge the ancient em monitor library into building as a libsys for the em22 plat. It's completely untested, but it builds and makes e.out executables. David Given 2018-06-13 21:44:25 +0900
  • 13a7abdd69 Rename a function to avoid a clash with an em system call. David Given 2018-06-13 21:34:14 +0900
  • 670c7ce96f After finding the em_table documentation, move it somewhere where other people can find it. David Given 2018-06-13 20:58:44 +0900
  • 15161ebb35 Remember to always link the libsys and libend. David Given 2018-06-13 20:57:31 +0900
  • 7f2ca76663 Expose our custom Lua interpreter to the build system so utility scripts can be written in it. David Given 2018-06-13 20:56:49 +0900
  • 2e93b8446e
    Merge pull request #98 from davidgiven/dtrg-m68k David Given 2018-06-12 14:24:32 +0200
  • 3892b7e0e6 Remove bogus conversion from test which was causing failure; you're not allowed to do cui or ciu with sizes smaller than a word. David Given 2018-06-12 21:04:27 +0900
  • 6ae38887a7 It appears that the parameter to lol technically has to be word aligned; having a non-word aligned parameter is illegal (but most of the toolchain accepts it). So, word align data structures for em22. David Given 2018-06-12 20:54:15 +0900
  • a000c62808 Get moncalls.c to compile on OpenBSD. George Koehler 2018-06-10 16:29:52 -0400
  • 250777d1ca Rename setmode() to set_mode() to avoid BSD prototype. George Koehler 2018-06-10 16:26:54 -0400
  • 6f9e418f94 Remove extra #include <stdio.h> to fix uint George Koehler 2018-06-10 16:24:35 -0400
  • 5404dace3a Stop using <X11/Xfuncproto.h> from x86emu. George Koehler 2018-06-10 16:00:23 -0400
  • 7edc835626
    Merge pull request #95 from davidgiven/dtrg-b David Given 2018-06-10 21:22:26 +0900
  • 4a249b1bdb Merge. David Given 2018-06-10 20:26:10 +0900
  • d623440c77 Add the core of a simple em22 platform. Unfortunately it doesn't work; the old em libmon vanished decades ago (or never existed), and also ass appears to have a different idea of what the em opcodes are to everything else and gets confused. David Given 2018-06-10 20:25:48 +0900
  • cebb238036 Merge. David Given 2018-06-10 18:09:18 +0900
  • 003799f898 Fix table underrun when looking up the character class of the EOF character, -1. David Given 2018-06-10 17:52:45 +0900
  • 5d519b79f7
    Merge pull request #94 from davidgiven/dtrg-ass David Given 2018-06-09 22:44:24 +0900
  • e7124f3e3f File cleanup. David Given 2018-06-09 21:21:28 +0900