David Given
|
420c47c386
|
Fix dependency error (only shows up with make, not ninja. Odd).
|
2016-08-15 00:46:43 +02:00 |
|
David Given
|
38fa6941d5
|
linux68k builds now.
|
2016-08-14 11:34:18 +02:00 |
|
David Given
|
3df4906d52
|
Turns out I wasn't building the syscall libraries. Do so.
|
2016-08-14 11:23:57 +02:00 |
|
David Given
|
b549980af2
|
Wasn't exporting the plat headers; refactor to make this a little cleaner.
|
2016-08-14 11:01:36 +02:00 |
|
David Given
|
f253b6a169
|
linux386 builds. Also, forgot to turn back on the language runtimes.
|
2016-08-14 10:37:55 +02:00 |
|
David Given
|
262c5fedcf
|
Biggish refactor to break cycles; my build rules were full of them. cpm builds,
which requires top and topgen.
|
2016-08-14 01:39:40 +02:00 |
|
David Given
|
e0b8bd221d
|
Pascal runtime library now builds.
|
2016-08-13 13:07:19 +02:00 |
|
David Given
|
e770d09dc8
|
Pascal compiler builds.
|
2016-08-13 13:03:06 +02:00 |
|
David Given
|
00c67fcc0e
|
Modula-2 runtime library now builds.
|
2016-08-13 12:43:44 +02:00 |
|
David Given
|
08b7c4aaae
|
The Basic runtime builds now.
|
2016-08-12 00:24:40 +02:00 |
|
David Given
|
7c60c27302
|
The Basic compiler works now.
|
2016-08-12 00:19:51 +02:00 |
|
David Given
|
3ce4e53aa9
|
Most of libc builds now (missing malloc).
|
2016-08-08 23:55:47 +02:00 |
|
David Given
|
0d77cb8279
|
We can build our first C file.
|
2016-08-07 21:56:53 +02:00 |
|
David Given
|
5e84be70fd
|
Massive ackbuilder refactor --- cleaner and more expressive. Lists
are automatically flattened (leading to better build files), and the
list and filename functions are vastly more orthogonal.
|
2016-08-04 23:51:19 +02:00 |
|
David Given
|
b2bb4ce3b2
|
Builds libend (the simplest library). Becoming obvious I need to rework the way
ackbuilder deals with lists.
|
2016-07-30 00:39:22 +02:00 |
|
David Given
|
363d13cc2f
|
C preprocessor; tabgen; now the pc86 boot.s builds using the ack
toolchain.
|
2016-07-29 00:22:49 +02:00 |
|
David Given
|
a8a9d1bbfa
|
yacc, ncgg; platform ncg builds now.
|
2016-07-26 23:35:30 +02:00 |
|
David Given
|
bff5c4019c
|
Baby steps towards building a platform --- make the assembler work.
Add ackbuilder support for C preprocessor files and yacc.
|
2016-07-24 00:50:02 +02:00 |
|
David Given
|
88bd7ce126
|
Remove defunct pmfiles.
--HG--
branch : default-branch
|
2016-06-03 13:56:50 +02:00 |
|
David Given
|
4b3c1a2d07
|
Add missing (but probably non-working) rpi file.
--HG--
branch : default-branch
|
2016-06-02 12:21:13 +02:00 |
|
David Given
|
ff0c78cc78
|
Merge from default.
--HG--
branch : dtrg-videocore-branch-branch
|
2016-03-13 21:13:09 +01:00 |
|
David Given
|
9f23fbbe6a
|
Allow machines to use cg if they wish.
--HG--
rename : mach/proto/ncg/build.mk => mach/proto/cg/build.mk
rename : util/ncgg/build.mk => util/cgg/build.mk
|
2015-03-23 00:08:51 +01:00 |
|
David Given
|
c72eaef8ee
|
Add routine to set the Raspberry Pi clock to 250MHz (loads faster than the default 19.2MHz).
--HG--
branch : dtrg-videocore
rename : plat/rpi/libsys/pi_user_to_phys.s => plat/rpi/libsys/pi_fast_mode.s
|
2013-06-24 23:57:27 +01:00 |
|
David Given
|
d94c1c8150
|
Updated distr files.
--HG--
branch : dtrg-videocore
rename : mach/i80/.distr => mach/vc4/.distr
rename : plat/cpm/.distr => plat/rpi/.distr
|
2013-06-21 23:38:21 +01:00 |
|
David Given
|
2be811bac2
|
Updated VC4 docs.
--HG--
branch : dtrg-videocore
|
2013-06-21 23:21:08 +01:00 |
|
David Given
|
052dd9bfc0
|
Actually remember to set the stack pointer on startup. Reduce to stack from 16kB to a much more reasonable 1kB.
--HG--
branch : dtrg-videocore
|
2013-06-20 00:14:55 +01:00 |
|
David Given
|
eaf4339cd6
|
Implement a very crude busy-wait based select() mechanism for consol input.
--HG--
branch : dtrg-videocore
rename : plat/rpi/include/ack/config.h => plat/rpi/include/sys/select.h
rename : plat/rpi/libsys/time.c => plat/rpi/libsys/select.c
|
2013-06-09 22:16:30 +01:00 |
|
David Given
|
ed6c4a85d1
|
Change the size of the SRAM area to 128kB (to reflect reality).
--HG--
branch : dtrg-videocore
|
2013-06-06 00:05:48 +01:00 |
|
David Given
|
aacabba165
|
Apply fix contributed by George Koehler:
- don't crash if BSS overlaps BDOS
- fix stack initialisation bug
- fix command line argification
|
2013-06-02 22:02:15 +01:00 |
|
David Given
|
d5a112dbfd
|
Some more termios compatibility options.
--HG--
branch : dtrg-videocore
|
2013-05-30 23:25:22 +01:00 |
|
David Given
|
2054618e75
|
Add basic termios to the rpi platform to allow echoing/newline translation to be controlled.
--HG--
branch : dtrg-videocore
rename : plat/rpi/include/unistd.h => plat/rpi/include/termios.h
rename : plat/rpi/libsys/write.c => plat/rpi/libsys/tcgetattr.c
rename : plat/rpi/libsys/write.c => plat/rpi/libsys/tcsetattr.c
|
2013-05-30 23:19:55 +01:00 |
|
David Given
|
d3e3e72860
|
Update from trunk.
--HG--
branch : dtrg-videocore
|
2013-05-29 15:03:48 +01:00 |
|
David Given
|
ae993b1eb2
|
Add a crude README.
--HG--
branch : dtrg-videocore
|
2013-05-26 19:54:22 +01:00 |
|
David Given
|
38e4726f5c
|
Boot code now works properly in both kernel and bare-metal mode.
--HG--
branch : dtrg-videocore
|
2013-05-26 19:41:37 +01:00 |
|
David Given
|
e01f00e320
|
Allow reading from the mini UART. Add a check to not touch the UART unless it's been initialised (in case of accidents when running in kernel mode).
--HG--
branch : dtrg-videocore
|
2013-05-26 18:58:54 +01:00 |
|
David Given
|
bd9497be77
|
Renamed the pi-specific functions to be a bit cleaner.
--HG--
branch : dtrg-videocore
rename : plat/rpi/libsys/phys_to_user.s => plat/rpi/libsys/pi_phys_to_user.s
rename : plat/rpi/libsys/uart.s => plat/rpi/libsys/pi_uart.s
rename : plat/rpi/libsys/user_to_phys.s => plat/rpi/libsys/pi_user_to_phys.s
|
2013-05-26 00:22:39 +01:00 |
|
David Given
|
e299cc3bcf
|
stdio (output only) now works.
--HG--
branch : dtrg-videocore
|
2013-05-25 23:59:31 +01:00 |
|
David Given
|
6a672d5e96
|
Heap allocations now works.
--HG--
branch : dtrg-videocore
|
2013-05-25 23:28:47 +01:00 |
|
David Given
|
ec25fec145
|
Build binaries that will run bare metal. Add enough syscall library to init the uart and write text.
--HG--
branch : dtrg-videocore
rename : plat/rpi/libsys/libsys.h => plat/rpi/libsys/libsysasm.h
rename : plat/rpi/libsys/_sys_rawread.s => plat/rpi/libsys/phys_to_user.s
rename : plat/rpi/libsys/_sys_rawread.s => plat/rpi/libsys/uart.s
rename : plat/rpi/libsys/_sys_rawread.s => plat/rpi/libsys/user_to_phys.s
|
2013-05-25 00:35:29 +01:00 |
|
David Given
|
8f338f9b44
|
Now actually runs on real hardware.
--HG--
branch : dtrg-videocore
|
2013-05-22 22:46:10 +01:00 |
|
David Given
|
b5e5df4a63
|
Allocate a user stack to run code in.
--HG--
branch : dtrg-videocore
|
2013-05-22 18:25:30 +01:00 |
|
David Given
|
6b5316dcfa
|
More typo fixes.
--HG--
branch : dtrg-videocore
|
2013-05-22 00:52:58 +01:00 |
|
David Given
|
72542288cd
|
Adjust bootstrap code to build kernels that work with the mailbox test app.
--HG--
branch : dtrg-videocore
|
2013-05-22 00:16:59 +01:00 |
|
David Given
|
5e9102955c
|
Reworked VC4 relocations and some of the instruction encoding to be actually correct. Now generating what could be real code!
--HG--
branch : dtrg-videocore
|
2013-05-21 23:17:30 +01:00 |
|
David Given
|
1312fe298b
|
Now compiles (incorrectly) the entire libc, libpc, libm2 and libbasic!
--HG--
branch : dtrg-videocore
|
2013-05-21 20:05:26 +01:00 |
|
David Given
|
92817a6ad7
|
Allow platforms to specify size of long double; seperate alignment from size.
--HG--
branch : dtrg-videocore
|
2013-05-21 19:18:11 +01:00 |
|
David Given
|
877e06ed89
|
Lots more opcodes including float support. Define float and double to be the
same thing (as the VC4 seems not to have double-precision float support).
--HG--
branch : dtrg-videocore
|
2013-05-21 18:16:30 +01:00 |
|
David Given
|
61bff18082
|
Added skeleton bootstrap code.
--HG--
branch : dtrg-videocore
rename : plat/pc86/boot.s => plat/rpi/boot.s
|
2013-05-19 23:33:29 +01:00 |
|
David Given
|
fc1b3672a3
|
Reapply bugfix to sbrk() which got dropped during the move from linx386/libsys
to liblinux. Set errno correctly.
|
2013-05-18 13:00:37 +01:00 |
|
David Given
|
32ebc502c8
|
Skeleton of VideoCore IV support for the Raspberry Pi.
--HG--
branch : dtrg-videocore
rename : mach/powerpc/as/.distr => mach/vc4/as/.distr
rename : mach/powerpc/as/mach0.c => mach/vc4/as/mach0.c
rename : mach/powerpc/as/mach1.c => mach/vc4/as/mach1.c
rename : mach/powerpc/as/mach2.c => mach/vc4/as/mach2.c
rename : mach/powerpc/as/mach3.c => mach/vc4/as/mach3.c
rename : mach/powerpc/as/mach4.c => mach/vc4/as/mach4.c
rename : mach/powerpc/as/mach5.c => mach/vc4/as/mach5.c
rename : mach/i86/build.mk => mach/vc4/build.mk
rename : mach/powerpc/libem/powerpc.h => mach/vc4/libem/videocore.h
rename : mach/i86/libend/.distr => mach/vc4/libend/.distr
rename : mach/i86/libend/edata.s => mach/vc4/libend/edata.s
rename : mach/i86/libend/em_end.s => mach/vc4/libend/em_end.s
rename : mach/i86/libend/end.s => mach/vc4/libend/end.s
rename : mach/i86/libend/etext.s => mach/vc4/libend/etext.s
rename : mach/powerpc/ncg/.distr => mach/vc4/ncg/.distr
rename : mach/powerpc/ncg/mach.c => mach/vc4/ncg/mach.c
rename : mach/powerpc/ncg/mach.h => mach/vc4/ncg/mach.h
rename : mach/powerpc/ncg/table => mach/vc4/ncg/table
rename : plat/pc86/descr => plat/rpi/descr
|
2013-05-17 00:03:38 +01:00 |
|