[abc80] externt tangentbord till abc80

H. Peter Anvin hpa at zytor.com
Tors Sep 3 15:05:47 PDT 2015


On 09/03/2015 02:56 PM, juhasz wrote:
>>> inp(56) utom ascii 255 vilket är en
>>> udda tangenttryckning (ctrl-<).
>>>
>>
>> I "input mode" eller "output mode" så får du ett interrupt varje 128 µs
>> (7812 Hz).  Varför i hela fridens dagar de valde den frekvensen kan man
>> ju bara gissa, men det finns där i alla fall.
>>
>>     -hpa
> 
> Kanske för att det är häftigt med snabba interrupt? Kan ju vara rätt
> användbart - man kan ju t ex göra rätt bra PWM-ljudgenerering, i alla
> fall upp till 4 kHz. Om jag förstått det rätt så är det också två
> linjesvep på skärmen, för signalen kommer från samma räknare som
> genererar hsynk, fast ytterligare delat med 2.
> 
> Jag kollade i Stockman och som ni säger, så kollar abc80 givetvis
> inp(56) direkt. Lite dumt eftersom det ju faktiskt finns en dedikerad
> tangentbordsbyte/flagga i minnet. Det rimliga hade ju varit att låta
> interruptrutinen skriva byten i minnet och se låta inläsningsrutinen
> skanna den. Då hade det varit en smal sak att injicera tecken genom att
> bara skriva flaggan via en bakgrundsrutin.
> 
> Det enda raka är nog att köra ABCBus med ROM kopierat i RAM patchat med
> en bättre rutin! (fast då måste man ju in och montera en switch under
> skalet...)
> 

ABC80 kollar INP(56) direkt, och loopar om bit 7 är satt.  Om bit 7 är
0, så används bit 6-0 till ett tecken men ingen repetering sker.

	-hpa




More information about the ABC80 mailing list