RunCPM icon indicating copy to clipboard operation
RunCPM copied to clipboard

[WIP] Implement iobyte for TTY

Open TurBoss opened this issue 9 months ago • 4 comments

Implement iobyte from moxhamj's issue #85 code

Ive been testing it on a teensy 4.1 going to give a try on a esp32

did a pull request allow easy test this to others and allow reviews

Thanks!

TurBoss avatar May 10 '24 03:05 TurBoss

Cool.

Thanks for taking the time to do this. I had it in mind but the pandemic killed it. Let's hold on to the pull request until you have tested in the ESP32. Would be perfect if you could also add some Due corresponding code and some skeleton we could leave in place for the other platforms, like vstudio and posix.

Thanks a lot.

On Thu, May 9, 2024, 11:04 PM TurBoss @.***> wrote:

Implement iobyte from moxhamj's issue #85 https://github.com/MockbaTheBorg/RunCPM/issues/85 code

Ive been testing it on a teensy 4.1 going to give a try on a esp32

did a pull request allow easy test this to others and allow reviews

Thanks!

You can view, comment on, or merge this pull request online at:

https://github.com/MockbaTheBorg/RunCPM/pull/194 Commit Summary

File Changes

(2 files https://github.com/MockbaTheBorg/RunCPM/pull/194/files)

Patch Links:

  • https://github.com/MockbaTheBorg/RunCPM/pull/194.patch
  • https://github.com/MockbaTheBorg/RunCPM/pull/194.diff

— Reply to this email directly, view it on GitHub https://github.com/MockbaTheBorg/RunCPM/pull/194, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD74NC4FW6OCN4GMOZ4JK2DZBQ2NFAVCNFSM6AAAAABHP3NJPWVHI2DSMVQWIX3LMV43ASLTON2WKOZSGI4DQOBSGQ3TQNI . You are receiving this because you are subscribed to this thread.Message ID: @.***>

MockbaTheBorg avatar May 10 '24 11:05 MockbaTheBorg

Hello!

Got the esp32s3 i have to work!

RunCPM Version 6.3 (CP/M 60K)

A0>kermit
Kermit-80 v4.11 configured for Generic CP/M-80 with Generic (Dumb) CRT Terminal type selected 

For help, type ? at any point in a command
Kermit-80   0A:>SET PORT TTY
Kermit-80   0A:>SET TERMINAL OFF
Kermit-80   0A:>c
[Connected to remote host.  Type Control-\C to return;
 type Control-\? for command list]
ATI

Zimodem ESP32 Firmware v4.0.1
sdk=v4.4.6-dirty chipid=0 cpu@240
tot=8192k heap=268k fsize=1287k
CONNECTED TO TP-LINK (192.168.10.136)
READY.
OK

But i have to manually assign the pins to each serial port in the INO file like this


...

const int TTY1SerialTX = 15;
const int TTY1SerialRX = 16;

const int TTY2SerialTX = 17;
const int TTY2SerialRX = 18;

void setup(void) {
  pinMode(LED, OUTPUT);
  digitalWrite(LED, LOW);
  Serial.begin(SERIALSPD);
  Serial1.begin(SERIALSPD, SERIAL_8N1, TTY1SerialRX, TTY1SerialTX);
  Serial2.begin(SERIALSPD, SERIAL_8N1, TTY2SerialRX, TTY2SerialTX);

...

I have also added a hardware file for my esp32 board

I'm also trying to figure why the boot message goes over the Serial1

Thanks :)

TurBoss avatar May 19 '24 15:05 TurBoss

We need to evaluate how much of this functionality can be moved to the hardware definition file (and globals.h) in a way that someone having a different board would just need to change that file and nothing else, like we have today. I want to avoid that someone else, willing to use an additional serial, would have to go change source inside the RunCPM innards. That would make it hard to support. For example: whatever needs to be in RunCPM.ino, for arduinos, wild need to have an equivalent on main.c, so people on the PCs could also enable the functionality seamlessly.

On Sun, May 19, 2024, 11:08 AM TurBoss @.***> wrote:

Hello!

Got the esp32s3 i have to work!

RunCPM Version 6.3 (CP/M 60K)

A0>kermit Kermit-80 v4.11 configured for Generic CP/M-80 with Generic (Dumb) CRT Terminal type selected

For help, type ? at any point in a command Kermit-80 0A:>SET PORT TTY Kermit-80 0A:>SET TERMINAL OFF Kermit-80 0A:>c [Connected to remote host. Type Control-\C to return; type Control-? for command list] ATI

Zimodem ESP32 Firmware v4.0.1 sdk=v4.4.6-dirty chipid=0 @.*** tot=8192k heap=268k fsize=1287k CONNECTED TO TP-LINK (192.168.10.136) READY. OK

But i have to manually assign the pins to each serial port in the INO file like this

... const int TTY1SerialTX = 15;const int TTY1SerialRX = 16; const int TTY2SerialTX = 17;const int TTY2SerialRX = 18; void setup(void) { pinMode(LED, OUTPUT); digitalWrite(LED, LOW); Serial.begin(SERIALSPD); Serial1.begin(SERIALSPD, SERIAL_8N1, TTY1SerialRX, TTY1SerialTX); Serial2.begin(SERIALSPD, SERIAL_8N1, TTY2SerialRX, TTY2SerialTX);

...

I have also added a hardware file for my esp32 board

I'm also trying to figure why the boot message goes over the Serial1

Thanks :)

— Reply to this email directly, view it on GitHub https://github.com/MockbaTheBorg/RunCPM/pull/194#issuecomment-2119269600, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD74NC34KICD4TOZ27CVX6TZDC57LAVCNFSM6AAAAABHP3NJPWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMJZGI3DSNRQGA . You are receiving this because you commented.Message ID: @.***>

MockbaTheBorg avatar May 20 '24 10:05 MockbaTheBorg

hello, sorry for the delay

I was curious if platformio could be an opition to have many platforms

[platformio]

;default_envs = teensy41
default_envs = esp32s3
;default_envs = linux

[env]
framework = arduino

[env:teensy41]
platform = teensy
board = teensy41
board_build.mcu = imxrt1062
board_build.f_cpu = 600000000L
monitor_speed = 115200
monitor_dtr = 0
monitor_rts = 0
upload_protocol = teensy-cli
lib_deps =
	greiman/SdFat@=2.2.3
	
build_flags =
    -DCORE_TEENSY
	-DDISABLE_FS_H_WARNING 
    -DTEENSY_OPT_FAST_LTO
    -DUSB_SERIAL
    -DSPI_DRIVER_SELECT=0
    -DSDFAT_FILE_TYPE=1


[env:esp32s3]
platform = espressif32
board = esp32-s3-devkitc-1
monitor_speed = 115200
board_build.flash_mode = dio
lib_deps =
	greiman/SdFat@=2.2.3
;build_flags = -DBOARD_HAS_PSRAM
;board_build.partitions = partitions.csv
;board_build.filesystem = spiffs
build_flags = 
	-DESP32
    -DUSB_SERIAL
	-DDISABLE_FS_H_WARNING 
	-DSPI_DRIVER_SELECT=0
	-DSDFAT_FILE_TYPE=1
    -DBOARD_HAS_PSRAM
    -mfix-esp32-psram-cache-issue

[env:windows]
platform = windows_x86

[env:linux]
platform = linux_x86_64

[env:linux_arm]
platform = linux_arm

thanks

TurBoss avatar Jun 04 '24 17:06 TurBoss

Hi there ... I am freezing the code of RunCPM ... from now on no more feature adding to it. (unless someone creates their own fork to work on) Its been a long journey, more than 10 years, but I am having to change gears away from it.

MockbaTheBorg avatar Jul 05 '24 17:07 MockbaTheBorg

cool Thank you!

TurBoss avatar Jul 05 '24 17:07 TurBoss

Thank you for sharing your very neat project.../Bill

wrljet avatar Jul 05 '24 17:07 wrljet