Låsa baudrate på applikation i Win textmode

Elektronik- och mekanikrelaterad mjukvara/litteratur. (T.ex schema-CAD, simulering, böcker, manualer mm. OS-problem hör inte hit!)
Användarvisningsbild
swesysmgr
Inlägg: 14929
Blev medlem: 28 mars 2009, 06:56:43
Ort: Göteborg

Re: Låsa baudrate på applikation i Win textmode

Inlägg av swesysmgr »

vfr skrev:Alternativt köra den virtuellt med comporten utmappad till en fysisk port och där ha möjlighet att låsa baudraten. VitualBox som jag kör, verkar inte ha den möjligheten rakt av i inställningarna iallafall.
VMWare kan mappa ut serieportar till fysiska portar, fil eller named pipe men jag är inte riktigt på det klara med vad problemet är, går programmet in och ändrar inställningarna för serieporten i windows? Eller läser det av serieportens inställda kapacitet och anpassar sig efter det?

Det du stället in i Widnows är max vad porten skall klara sen kan du köra långsammare via den om programmet och terminalen är inställda på något långsammare. Jag skulle gissa att maxhastigheten är hårdkodad inne i programmet och att du måste ändra detta i så fall.
rehnmaak
Inlägg: 2204
Blev medlem: 13 december 2005, 01:43:41

Re: Låsa baudrate på applikation i Win textmode

Inlägg av rehnmaak »

AndLi skrev:Jag har lite samma problem, använder dock ftdi serieports chip i egen hårdvara.
Funderade på om det gick att göra en egen drivrutin till den som alltid skickar samma baudrate till chipet oberoende av vad ev program egentligen vill sätta.
Jag har skrivit en driver för CP2102 som gör detta.

>>>
AndLi skrev: Eller som sagt TSR-varianten eller något liknande.
Du kan skriva en sk. filter driver som lägger sig mellan filsystemet och serieport drivern och fånga alla anrop till IOCTL_SERIAL_SET_BAUD_RATE och modifiera till önskad hastighet.

Men enklast vore om du bara sökte efter strängen jag skrev i ett tidigare inlägg. Jag tror inte du hittar mer än en sådan sträng i din exe och då är ju saken klar. Så hur länge ska vi debattera innan du börjar testa faktiskt det enda konstruktiva förslag du har fått hitills?
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: Låsa baudrate på applikation i Win textmode

Inlägg av vfr »

swesysmgr> Problemet är att jag vill köra en högre hastiget än vad programmet supportar. Upp t.o.m 19200 så funkar det bra. Över det så funkar det inte.

rehnmaak> Jodå, problemet är att den strängen finns på 7 ställen i exe-filen. Så då blir det väldigt mycket chansning att prova att ändra en, två eller flera av dom ställena. Det blir rätt många kombinationer. Däremot det du säger om filterdriver, var precis det som jag fiskade efter med hooks. Däremot har jag aldrig skrivit något sånt själv.
Användarvisningsbild
Andax
Inlägg: 4379
Blev medlem: 4 juli 2005, 23:27:38
Ort: Jönköping

Re: Låsa baudrate på applikation i Win textmode

Inlägg av Andax »

Testade en debugger för många år sedan som var grymt bra. Den disassemblerade kod i minnet men kunde automagiskt döpa om anrop till OS rutiner till klartext. Man kunde lägga in breakpoints när den anropade vissa systemrutiner som man var intresserad av etc. Den låg latent i bakgrunden och man kunde poppa upp den med en hotkey.
Nu var det nog 5-6 år sedan jag testade den och kommer inte ihåg vad den heter (har för mig något på ISE).
Den skulle nog vara perfekt för att patcha ditt program. Tyvärr kunde jag ju inte hjälpa dig hela vägen då minnet sviker.
sneaky
Inlägg: 1621
Blev medlem: 22 juni 2009, 18:38:42

Re: Låsa baudrate på applikation i Win textmode

Inlägg av sneaky »

Skulle tro att du tänker på SoftICE Andax. Jag lekte lite med det själv för en bunt år sedan (10 stycken eller så) så jag har ingen aning om det fortfarande utvecklas.
Användarvisningsbild
BEEP
EF Sponsor
Inlägg: 1593
Blev medlem: 21 januari 2006, 16:57:56
Ort: Mölndal

Re: Låsa baudrate på applikation i Win textmode

Inlägg av BEEP »

Får man lov att fråga vad programmet gör?
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: Låsa baudrate på applikation i Win textmode

Inlägg av vfr »

Men bara för att porten är låst på en annan hastighet pratar ju inte applikationen så fort.


Om porten är låst till en viss hastighet så kan inte applikationen ställa in den hastighet som den egentligen vill ha. Alltså blir det den låsta hastigheten. Det är iallafall vad jag menar när jag skriver att hastigheten är låst. Inte bara att porten är inställd på en viss hastighet. Detta skulle t.ex gå att göra i en virtuell miljö där ett "setbaud"-anrop från klientmiljön inte tillåts slå igenom på hostsystemet. Likaså skulle det gå att göra med en filterdriver som rehnmaak skriver om.

Får man lov att fråga vad programmet gör?

Javisst, fråga du! :D Det är en debugger lite liknande gdb. Den pratar serieport upp mot host-PC:n och på 19200 så blir det inga speciellt snabba laddningstider när man skall ladda hela objektkoden ner till målsystemet.
Skriv svar