Klemens Schölhorn
3fbc5a72c1
License under GPLv3
2018-06-05 15:25:29 +02:00
Klemens Schölhorn
9e49f5e332
Correctly handle CR followed by LF
...
This would previously result in an empty line, because the CR resets the
current column to zero. Now we remember the last written char and column
so that we can restore the column before finishing the line.
2018-06-04 23:03:53 +02:00
Klemens Schölhorn
227dce66e9
Implement backspace control character
2018-06-04 15:47:58 +02:00
Klemens Schölhorn
bee5a3a471
Rename interface signals for easier integration
2018-04-30 03:45:35 +02:00
Klemens Schölhorn
5acb3b27a4
Remove obsolete files
2018-04-26 00:01:06 +02:00
Klemens Schölhorn
e960fae673
Add pattern generator for demoing the scrolling behaviour
2018-04-25 23:57:01 +02:00
Klemens Schölhorn
1c22e73128
Implement scrolling for the terminal
...
The line where the cursor located is always displayed at the bottom and
old content scrolls up until disappearing eventually at the top of the
screen.
This is implemented using a ring buffer of all rows, where old chars
are only overwritten when writing new ones. To avoid displaying stale
data at the end of rows, we save the length of every row and hide chars
that were not overwritten (yet).
2018-04-25 23:50:09 +02:00
Klemens Schölhorn
2f858a6764
Make terminal genericity opt-in for easier interfacing
2018-04-25 23:47:50 +02:00
Klemens Schölhorn
7cf0aa33c0
Make block ram entity generic over width and depth
2018-04-25 22:55:39 +02:00
Klemens Schölhorn
20aa3137a8
Rename project to terminal
2018-04-25 22:54:06 +02:00
Klemens Schölhorn
8ee7a1c463
Implement single character write interface
...
This basic interface just moves the cursor to the next position after
writing a character and supports CR and LF as special chars for now.
2018-04-24 23:44:13 +02:00
Klemens Schölhorn
0aad663c33
Move vga and image creation entities into a new terminal entity
2018-04-24 21:58:42 +02:00
Klemens Schölhorn
5f47c1327f
Enable writing to the terminal buffer on second port
...
This adds an explicit terminal_buffer entity to help with the blockram
inference. Both read and write are completely independent, although they
run with the same clock for now.
2018-04-24 21:30:59 +02:00
Klemens Schölhorn
ea99b5b07a
Enable new parser
2018-04-24 21:26:21 +02:00
Klemens Schölhorn
a8191387ec
Align delays in the font_rom to fix rendering
2018-01-24 23:43:41 +01:00
Klemens Schölhorn
ad8b39a4ce
Implement basic ascii framebuffer (read only for now)
2018-01-23 03:02:06 +01:00
Klemens Schölhorn
0e298a6380
Add minimal keyboard controller that counts received bytes
2018-01-10 02:17:29 +01:00
Klemens Schölhorn
08759ae5f3
Import ps/2 core by Daniel Quintero
2018-01-09 23:57:58 +01:00
Klemens Schölhorn
25130c1867
Add basic example image generator
2017-11-23 04:32:27 +01:00
Klemens Schölhorn
ce043d2805
Add ch7301c initialization to the main unit
2017-11-23 04:29:45 +01:00
Klemens Schölhorn
ea6b3418de
Add the actual init sequence for clocks <= 65 MHz
2017-11-23 02:12:25 +01:00
Klemens Schölhorn
da4e8230c5
Make init_ch7301c generic and prepare for embedding into main
2017-11-23 01:33:28 +01:00
Klemens Schölhorn
a86cd90384
Fixup i2c init module
2017-11-22 04:09:01 +01:00
Klemens Schölhorn
168102e13b
Add i2c init procedure sketch
2017-11-13 04:46:55 +01:00
Klemens Schölhorn
03659e9fb1
Import existing project for displaying images through DVI on the ml507
2017-11-13 04:43:04 +01:00