Patch to Paste ASCII file to Serial line

Wan Tat Chee tcwan@cs.usm.my
Wed, 22 Oct 2003 17:15:11 +0800 (SGT)


  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

---559023410-851401618-1066814111=:13078
Content-Type: TEXT/PLAIN; charset=US-ASCII

Hi, 

I'm not subscribed to the list, but I'd like to forward a
'quick-and-dirty' patch to minicom 2.1 (derived from the RedHat src rpm)
to enable the uploading of text files without the use of the ascii-xfer
application.

The problem with ascii-xfer is that it swallows any status messages
returned by the target via the serial line, rendering it unusable for
interfacing minicom to Embedded Processor boards etc. that uses raw
ascii transfer modes for sending executable programs (typically S-Record
or Intel Hex format) files to the board (with progress indicators, etc.).

This patch basically opens the file and sends the ascii text to the
serial line directly, and is mapped to Ctrl-A-Y. It uses the file
selection dialog code used by the other uploading/downloading protocols.

Feel free to merge/modify it for the main source if it's suitable.
 
T.C.
----
Wan Tat Chee (Lecturer)
School of Computer Science, Univ. of Science Malaysia,
11800 USM, Penang, Malaysia.      Rm.625 Ofc Ph: +604 653-3888 x 3617
NRG Lab Admin: +604 659-4757           Rm.601-E Ofc Ph: +604 653-4396
Internet: tcwan@cs.usm.my            Web: http://nrg.cs.usm.my/~tcwan
GPG Key : http://nrg.cs.usm.my/~tcwan/tcw_gpg-20030322.asc
F'print : DCF2 B9B2 FA4D 1208 AD59  14CA 9A8F F54D B2C4 63C7

---559023410-851401618-1066814111=:13078
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="minicom-2.1-pastefile.patch"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.GSO.4.10.10310221715110.13078@cs.usm.my>
Content-Description: 
Content-Disposition: attachment; filename="minicom-2.1-pastefile.patch"

ZGlmZiAtTmF1ciBtaW5pY29tLTIuMS9zcmMvaGVscC5jIG1pbmljb20tMi4x
LW1vZC9zcmMvaGVscC5jDQotLS0gbWluaWNvbS0yLjEvc3JjL2hlbHAuYwky
MDAzLTAzLTMxIDAyOjU1OjUxLjAwMDAwMDAwMCArMDgwMA0KKysrIG1pbmlj
b20tMi4xLW1vZC9zcmMvaGVscC5jCTIwMDMtMTAtMTggMTM6MTU6MzEuMDAw
MDAwMDAwICswODAwDQpAQCAtNjcsNiArNjcsOCBAQA0KICNlbHNlDQogICB3
cHV0cyh3LCBfKCIgICAgICAgICAgICAgICAgICAgICAgIHwgSGVscCBzY3Jl
ZW4uLi4uLi4uLloiKSk7DQogI2VuZGlmDQorICB3bG9jYXRlKHcsIDAsIDEz
KTsNCisgIHdwdXRzKHcsIF8oIiBwYXN0ZSB0ZXh0IGZpbGUuLi4uWSIpKTsN
CiAjaWYgSElTVE9SWQ0KICAgd2xvY2F0ZSh3LCA0NCwgMTMpOw0KICAgd3B1
dHModywgXygifCBzY3JvbGwgQmFjay4uLi4uLi4uQiIpKTsNCmRpZmYgLU5h
dXIgbWluaWNvbS0yLjEvc3JjL21pbmljb20uYyBtaW5pY29tLTIuMS1tb2Qv
c3JjL21pbmljb20uYw0KLS0tIG1pbmljb20tMi4xL3NyYy9taW5pY29tLmMJ
MjAwMy0wNS0xNyAwNDozMzoxOS4wMDAwMDAwMDAgKzA4MDANCisrKyBtaW5p
Y29tLTIuMS1tb2Qvc3JjL21pbmljb20uYwkyMDAzLTEwLTE4IDEwOjMwOjAx
LjAwMDAwMDAwMCArMDgwMA0KQEAgLTE1MDcsNiArMTUwNyw5IEBADQogCQkJ
a2V5Ym9hcmQoY3Vyc29ybW9kZSA9PSBOT1JNQUwgPyBLQ1VSU1QgOiBLQ1VS
QVBQLCAwKTsNCiAJCQlpZiAoc3QpIGN1cnNfc3RhdHVzKCk7DQogCQkJYnJl
YWs7DQorCQljYXNlICd5JzogLyogUGFzdGUgZmlsZSAqLw0KKwkJCXBhc3Rl
X2ZpbGUoKTsNCisJCQlicmVhazsNCiAJCWRlZmF1bHQ6DQogCQkJYnJlYWs7
DQogCX0NCmRpZmYgLU5hdXIgbWluaWNvbS0yLjEvc3JjL21pbmljb20uaCBt
aW5pY29tLTIuMS1tb2Qvc3JjL21pbmljb20uaA0KLS0tIG1pbmljb20tMi4x
L3NyYy9taW5pY29tLmgJMjAwMy0wNC0yNiAxNTozMTowNi4wMDAwMDAwMDAg
KzA4MDANCisrKyBtaW5pY29tLTIuMS1tb2Qvc3JjL21pbmljb20uaAkyMDAz
LTEwLTE4IDExOjIwOjQ0LjAwMDAwMDAwMCArMDgwMA0KQEAgLTMyMiw2ICsz
MjIsNyBAQA0KIF9QUk9UTyhpbnQgbWNfc2V0ZW52LCAoY2hhciAqLCBjaGFy
ICopKTsNCiBfUFJPVE8odm9pZCBrZXJtaXQsICggdm9pZCApKTsNCiBfUFJP
VE8odm9pZCBydW5zY3JpcHQsICggaW50IGFzaywgY2hhciAqcyAsIGNoYXIg
KmwgLCBjaGFyICpwICkpOw0KK19QUk9UTyhpbnQgcGFzdGVfZmlsZSwgKCB2
b2lkICkpOw0KIA0KIC8qICAgICAgUHJvdG90eXBlcyBmcm9tIGZpbGU6ICIg
d2luZGl2LmMgIiAgICAgICovDQogDQpkaWZmIC1OYXVyIG1pbmljb20tMi4x
L3NyYy91cGRvd24uYyBtaW5pY29tLTIuMS1tb2Qvc3JjL3VwZG93bi5jDQot
LS0gbWluaWNvbS0yLjEvc3JjL3VwZG93bi5jCTIwMDMtMDQtMTMgMDY6NTI6
MjAuMDAwMDAwMDAwICswODAwDQorKysgbWluaWNvbS0yLjEtbW9kL3NyYy91
cGRvd24uYwkyMDAzLTEwLTE4IDEzOjIyOjM0LjAwMDAwMDAwMCArMDgwMA0K
QEAgLTMzLDYgKzMzLDE2IEBADQogICovDQogc3RhdGljIGludCB1ZHBpZDsN
CiANCisNCitzdGF0aWMgdm9pZCBtc19kZWxheShtcykNCitpbnQgbXM7DQor
ew0KKyNpZmRlZiBIQVZFX1VTTEVFUA0KKyAgdXNsZWVwKDEwMDAgKiBtcyk7
DQorI2VuZGlmDQorfQ0KKw0KKw0KIC8qDQogICogQ2hhbmdlIHRvIGEgZGly
ZWN0b3J5Lg0KICAqLw0KQEAgLTQzMCw2ICs0NDAsNzcgQEANCiAgIHBvcnRf
aW5pdCgpOw0KIH0NCiANCisvKg0KKyAqIFBhc3RlIHRleHQgZmlsZSB0byBj
b25zb2xlL3NlcmlhbCBsaW5lLiBBdm9pZCBhc2NpaS14ZmVyIHByb2JsZW0g
b2YgDQorICogc3dhbGxvd2luZyB1cCBzdGF0dXMgbWVzc2FnZXMgcmV0dXJu
ZWQgdmlhIHRoZSBzZXJpYWwgbGluZS4NCisgKiBUaGlzIGlzIGVzcGVjaWFs
bHkgdXNlZnVsIGZvciBFbWJlZGRlZCBNaWNyb3Byb2Nlc3NvciBEZXZlbG9w
bWVudCBLaXRzDQorICogdGhhdCB1c2UgcmF3IGZpbGUgdHJhbnNmZXIgbW9k
ZSAobm8gcHJvdG9jb2xzKSB0byBkb3dubG9hZCB0ZXh0IGVuY29kZWQNCisg
KiBleGVjdXRhYmxlIGZpbGVzIChlZy4sIGluIFMtUmVjb3JkIG9yIEludGVs
IEhleCBmb3JtYXRzKQ0KKyAqDQorICogVEMgV2FuIDx0Y3dhbkBjcy51c20u
bXk+IDIwMDMtMTAtMTgNCisgKi8NCitpbnQgcGFzdGVfZmlsZSgpDQorew0K
KyAgRklMRSAqZnA7DQorICBjaGFyIGxpbmVbMTAyNF07DQorICBjaGFyICpz
ID0iIjsNCisgIGludCBkb3RyYW5zID0gMTsNCisgIGludCBsZGVsYXkgPSAx
OwkvKiBoYXJkY29kZWQgMSBtcyAqLw0KKw0KKyAgY2hhciBidWZbMTI4XTsN
CisgIGNoYXIgKnB0cjsNCisgIGludCBibGVuOw0KKyAgdW5zaWduZWQgbG9u
ZyBiZG9uZSA9IDA7DQorICBpbnQgeDsNCisgIGJ1ZlswXSA9IDA7DQorDQor
ICBzID0gZmlsZWRpcigxLCAwKTsNCisgIGlmIChzID09IE5VTEwpDQorICAg
IHJldHVybiAwOw0KKyAgaWYgKChmcCA9IGZvcGVuKHMsICJyIikpID09IE5V
TEwpIHsNCisJcGVycm9yKHMpOw0KKwlyZXR1cm4gLTE7DQorICB9DQorDQor
ICB3aGlsZShmZ2V0cyhsaW5lLCAxMDI0LCBmcCkgIT0gTlVMTCkgew0KKwkv
KiBDaGVjayBmb3IgSS9PIG9yIHRpbWVyLiAqLw0KKwl4ID0gY2hlY2tfaW8o
cG9ydGZkX2Nvbm5lY3RlZCwgMCwgMTAwMCwgYnVmLCAmYmxlbik7DQorDQor
CS8qICBTZW5kIGRhdGEgZnJvbSB0aGUgbW9kZW0gdG8gdGhlIHNjcmVlbi4g
Ki8NCisgIAlpZiAoKHggJiAxKSA9PSAxKSB7DQorICAJCXB0ciA9IGJ1ZjsN
CisgIAkJd2hpbGUoYmxlbi0tID4gMCkgew0KKwkJCWlmIChQX1BBUklUWVsw
XSA9PSAnTScgfHwgUF9QQVJJVFlbMF0gPT0gJ1MnKQ0KKwkJCQkqcHRyICY9
IDB4N2Y7DQorICAJCQl2dF9vdXQoKnB0cisrKTsNCisJCX0NCisgIAkJd2Zs
dXNoKCk7DQorICAJfQ0KKw0KKwlpZiAoZG90cmFucyAmJiAocyA9IHN0cnJj
aHIobGluZSwgJ1xuJykpICE9IE5VTEwpIHsNCisJCWlmIChzID4gbGluZSAm
JiAqKHMgLSAxKSA9PSAnXHInKQ0KKwkJCXMtLTsNCisJCSpzID0gMDsNCisJ
CXMgPSBsaW5lOw0KKwkJZm9yKHMgPSBsaW5lOyAqczsgcysrKQ0KKwkJICAg
dnRfc2VuZCgqcyk7DQorCQl2dF9zZW5kKCdccicpOw0KKwkJdnRfc2VuZCgn
XG4nKTsNCisJCWJkb25lICs9IHN0cmxlbihsaW5lKSArIDI7DQorCX0gZWxz
ZSB7DQorCQlmb3IocyA9IGxpbmU7ICpzOyBzKyspDQorCQkgICB2dF9zZW5k
KCpzKTsNCisJCWJkb25lICs9IHN0cmxlbihzKTsNCisJfQ0KKwlpZiAobGRl
bGF5KSB7DQorCQltc19kZWxheShsZGVsYXkpOw0KKwl9DQorICB9DQorICBm
Y2xvc2UoZnApOw0KKyAgcmV0dXJuIDA7DQorDQorfQ0KKw0KIC8qID09PT09
PT09PT09PSBIZXJlIGJlZ2lucyB0aGUgc2V0ZW52IGZ1bmN0aW9uID09PT09
PT09PT09PT0gKi8NCiAvKg0KICAqIENvbXBhcmUgdHdvIHN0cmluZ3MgdXAg
dG8gJz0nDQo=
---559023410-851401618-1066814111=:13078--