reg-ios.spin & input

Du hast ein Betriebssystem für den Hive geschrieben oder beschäftigst dich mit den grundlegenden Systemfunktionen, dann bist du hier richtig!
Antworten
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

reg-ios.spin & input

Beitrag von PIC18F2550 »

Fragt mann zweimal hintereinander die Routine auf, und gibt man beim zweitenmal nur Enter ein so bekommt man das erste zeichen von der vorhergehenden abfrage.
Zuletzt geändert von PIC18F2550 am Mi 23. Mär 2016, 08:42, insgesamt 1-mal geändert.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
zille9
Beiträge: 399
Registriert: Do 4. Okt 2012, 21:56
Wohnort: Berlin

Re: reg-ios.spin & inpu

Beitrag von zille9 »

steckt das letzte Zeichen noch im INPUT-Puffer,
Lösung:Puffer nach Abfrage löschen
Computer lösen die Probleme, die man ohne sie gar nicht hätte!
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: reg-ios.spin & input

Beitrag von PIC18F2550 »

Der Puffer muss vorher gelöscht werden.
Am besten gleich in der Input Funktion.

Bitte in neuer Revision einarbeiten.

Code: Alles auswählen

PUB input(stradr,anz) | curpos,i,n                      'key: stringeingabe
{{input(stradr,anz) - key: stringeingabe}}

  curpos := curgetx                                     'cursorposition merken
  i := 0
  byte[stradr][i] := 0                    '<<< REV.>>>
  repeat
    n := keywait                                        'auf taste warten
    if n == $0d
       quit
    if (n == CHAR_BS)&(i>0)                             'backspace
       printbs
       i--
       byte[stradr][i] := 0
    elseif i < anz                                      'normales zeichen
       printchar(n)
       byte[stradr][i] := n
       i++
       byte[stradr][i] := 0
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
drohne235
Administrator
Beiträge: 2284
Registriert: So 24. Mai 2009, 10:35
Wohnort: Lutherstadt Wittenberg
Kontaktdaten:

Re: reg-ios.spin & input

Beitrag von drohne235 »

Notiert! :DAUMENHOCH
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford
Benutzeravatar
drohne235
Administrator
Beiträge: 2284
Registriert: So 24. Mai 2009, 10:35
Wohnort: Lutherstadt Wittenberg
Kontaktdaten:

Re: reg-ios.spin & input

Beitrag von drohne235 »

Fehler ist für R58 korrigiert.
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: reg-ios.spin & input

Beitrag von PIC18F2550 »

OK :)
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Antworten