You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: changelog.txt
+23-1Lines changed: 23 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1,3 +1,25 @@
1
+
v0.30.3:
2
+
Terminal: 16 colour support for the 4x8 font. Achieved by sacrificing the inverted character set (only when using 16 colour 4x8!).
3
+
Terminal: Added the "tty" command; it initializes the SMDTC TTY to a sane enviroment for a linux tty, although still somewhat iffy and some functionality is still missing.
4
+
Terminal: Added support for DECCKM (Cursor Key Format). "Cursor", "Numpad cursor", "Home" and "End" keys should now switch reporting mode correctly.
5
+
Terminal: Control characters can now be entered by pressing CTRL + <key>, for example: CTRL+C will send ^C.
6
+
Terminal: History queue can now store 2 commands.
7
+
UI: Added preliminary ColourPicker, Tab and ConfirmBox widget, these will be finalized later on. These widgets can be tested in the UI tester; Quick menu -> Debug -> UI Tester.
8
+
Misc: Boot prompt now uses the terminal instead of the drawing on its own to the window plane. This allows for much better printing, colour and scrolling support if needed.
9
+
10
+
Fixes:
11
+
Terminal: Mode set/reset in parser got broken in an earlier commit. Escape sequences such as "ESC[?Ⓝh" should now work again, applications such as nano now renders properly again.
12
+
Terminal: Added a few skeleton escape codes, ie doing the bare minimum to handle them for now so they don't mess with previous/following escape codes.
13
+
DevMgr: Joypad was set to a weird state after the PS/2 keyboard detected scan iterated through all ports, which caused a few buttons to not work on joypads.
14
+
Drivers: The PS/2 keyboard detection scan will now only scan ports with an unknown ID, this is to avoid disturbing devices which for certain is not a PS/2 keyboard.
15
+
Drivers: Hopefully fixed the XPN driver for the last time; Pinging does not get stuck in monitor mode any more.
16
+
Misc cursor fixes; due to earlier optimizations the cursor Y position did not always get updated.
17
+
Misc fixes in 4x8 font tilesets; 1 stray pixel in one character and 1 missing pixel in another character. The characters in question are used for line drawing.
18
+
19
+
Known bugs:
20
+
IRC: Nick list is missing 1 nick, see command 353 in IRC.c
21
+
IRC: Erroneous string comparison in command 353, in IRC.c
22
+
1
23
v0.30.2:
2
24
Telnet/Terminal: Erroneously cleared the entire next row of text every time a newline+carridge return was encountered, this should only be done when also scrolling down to a new line.
3
25
IRC: The typing input box at the bottom now uses DMA VRAM copy. Previously a new single tile was uploaded to VRAM for every character you typed.
@@ -9,7 +31,7 @@ Misc: Slimmed UTF8 tables down from 256 bytes to 64 bytes for every table. Now o
9
31
Misc: Added doxygen comments to the PS/2 keyboard functions.
10
32
Misc: Date function added to terminal. Used to sync to a time server and to print the current date.
11
33
FixMe: IRC: Nick list is missing 1 nick, see command 353 in IRC.c .
12
-
FixMe: IRC: Erroneous string comparision in command 353, in IRC.c .
34
+
FixMe: IRC: Erroneous string comparison in command 353, in IRC.c .
13
35
14
36
v0.30.1:
15
37
SMDTC: FAT12/16/32 support, file operations and other misc functions added for testing purposes. Disabled by default.
*[How to wire up a PS/2 keyboard](#how-to-wire-up-a-ps2-keyboard)
20
+
*[Pin configuration of the MD controller ports](#pin-configuration-of-the-md-controller-ports)
21
+
*[PS/2 pin reference](#ps2-pin-reference)
22
+
*[MD UART pin reference](#md-uart-pin-reference)
23
+
*[Shortcuts](#shortcuts)
24
+
*[Quick menu](#quick-menu)
25
+
*[IRC client](#irc-client)
26
+
*[Telnet client](#telnet-client)
27
+
*[Terminal emulator](#terminal-emulator)
18
28
19
29
## Disclaimer
20
30
> [!WARNING]
@@ -28,6 +38,7 @@ xPico/RetroLink support as an alternative to the above is being worked on.<br>
28
38
b1tsh1ft3r - Testing, improvement ideas and RetroLink/xPico support<br>
29
39
RKT - For creating a 4x8 extended ASCII font tileset<br>
30
40
Stef - For creating [SGDK](https://github.com/Stephane-D/SGDK)<br>
41
+
Sik - For creating the website [Plutiedev](https://plutiedev.com/) with valuable information regarding the MD<br>
31
42
<br>
32
43
33
44
## Building SMDTC from source
@@ -36,6 +47,23 @@ Stef - For creating [SGDK](https://github.com/Stephane-D/SGDK)<br>
36
47
The SGDK library must be rebuilt with the flags `HALT_Z80_ON_IO` and `HALT_Z80_ON_DMA` set to 0 in config.h to make sure the z80 CPU is never getting its bus back.<br>
37
48
<br>
38
49
50
+
## Running SMDTC
51
+
SMDTC is made to run on the original Mega Drive / Genesis hardware;<br>
52
+
Easiest way to run SMDTC on your system is by transferring the binary file `smdt_vX.YY.Z.bin` to a flashcart.<br>
53
+
<br>
54
+
You can also run SMDTC in a Mega Drive / Genesis emulator and easily check it out; Do mind that most emulators do not provide any way to actually connect any external serial devices, so no network support is possible while running in an emulator.<br><br>
55
+
I highly recommend the emulator [BlastEm](https://www.retrodev.com/blastem/nightlies/) since it supports the Sega Saturn keyboard.<br>
56
+
Other emulators may have issues running SMDTC and it is unlikely they will have any keyboard support.
57
+
<br>
58
+
59
+
## Required hardware
60
+
1. A PS/2 keyboard or a Sega Saturn keyboard (not strictly required but preferred).
61
+
2. A **5 volt** RS-232 serial connection or an xPico/xPort module.
62
+
3. A Mega Drive or Genesis and a way to run roms on it.
63
+
<br>
64
+
65
+
RetroLink network cartridge as an alternative network adapter is being worked on.<br>
66
+
39
67
## Devices
40
68
SMDTC has a device manager which can autodetect if a device is present and where it is plugged in.<br>
41
69
Device detection is only done on bootup, no plug & play support (yet).<br>
@@ -48,18 +76,18 @@ A fallback joypad device will be activated if SMDTC fails to find a keyboard or
48
76
All detected devices can be viewed in the "Connected devices" list (Quick menu -> Mega Drive settings -> Connected devices)<br>
49
77
<br>
50
78
> [!NOTE]
51
-
> SMDTC is limited when it comes to detecting the presence of a serial connection on the built in UART (Only an xPico module can be autodetected)<br>
52
-
> By default SMDTC will listen for incoming connections on PORT 2 UART.<br>
79
+
> SMDTC is limited when it comes to detecting the presence of a serial connection on the built in UART.<br>
80
+
> By default SMDTC will listen for incoming connections and attempt to find serial devices on PORT 2 UART.<br>
53
81
> This setting can be changed in the "Select serial port" menu (Quick menu -> Mega Drive settings -> Select serial port)<br>
54
82
> Do not forget to save your changes! (Quick menu -> Reset -> Save config to sram)<br>
55
83
<br>
56
84
57
-
### List of autodetected devices that require no configuration
85
+
### List of autodetected devices
58
86
PS/2 Keyboard.<br>
59
87
Sega Saturn keyboard.<br>
60
88
Sega 3/6 button joypad.<br>
61
-
xPico module connected to built in UART (Currently being worked on, support may be iffy)<br>
62
-
RetroLink network adapter cartridge (Currently being worked on, support may be iffy)<br>
89
+
xPico module connected to built in UART (May require you to set the correct serial port as described above)<br>
90
+
RetroLink network adapter cartridge (Currently being worked on, support may be iffy)<br>
0 commit comments