[abc80] CamelFORTH för ABC80
Abinsium
abinsium at gmail.com
Ons Feb 21 05:14:02 PST 2018
Jag kände inte till `PC!` och `PC@`, men du kan ta bort `P!` och `P@`
då, ty de som redan finns fungerar för ljud (`7 6 PC!` och stänga av med
`0 6 PC!`) och för att byta mellan 40 och 80 tecken per rad (`4 PC@` och
tillbaka med `3 PC@`). En feature är att 40- och 80-teckensskärmen
verkar vara oberoende av varandra i ABCWin2 och kanske även på en äkta
ABC80.
Du får gärna göra include/included och strunta i block, ty om man kan ha
ca 100 små filer så kan man simulera block-systemet vid behov.
Man kan göra en fil med FORTH-kod som inkluderad gör CamABC kompatibel
med FIG-FORTH för ABC80. Man kanske även kan tänka sig CamABC till
ABC806 i ABCWin2, ty den har färg och är därmed lite roligare.
Mvh,
// Mikael
Den 2018-02-20 kl. 20:02, skrev Robert Juhasz:
> Hmm.... lagom till att jag testat P! och P@ ser jag att det redan finns
> PC! och PC@ som dessutom var lite smartare kodade. Oh well, det är
> alltid kul att göra nya forth-ord, men frågan är om det är lönt att ha
> dem kvar........
>
> Körde också diff på 1.01 o 1.2. Verkar vara minimala skillnader i
> grundfilerna...
>
> Robert
>
> Skickat från min Xperia™-smartphone från Sony
>
>
>
> ---- Robert Juhasz skrev ----
>
> Konstigt. Jag har kort abcwin med skärmtangentbordet i w10. det funkade
> och borde funka på liknande sätt….
>
> block är såklart ett alternativ, även om jag då föredrar att läsa/skriva
> block från en fil snarare än direkt till disk som Robert J:s (haha
> vilket sammanträffande…) figforth, för den antar att man har 160K disk
> och det blir jättekonstigt när man har abc832 eller hårddisk…
>
> P! och P@ tillagda till camelabc.azm <http://camelabc.azm> (otestade…)!
> Håller med om deras användbarhet!
>
> 1.2: Oj det hade jag faktiskt missat. Tror jag fick tag på camleforthen
> 1.01 via en CP/M sida, som kanske inte var uppdaterad med det senaste.
> Men det är lite större jobb…
>
> Robert
>
> > 20 feb. 2018 kl. 01:13 skrev Abinsium <abinsium at gmail.com
> <mailto:abinsium at gmail.com>>:
> >
> > Detta skrev heller inget i ABCWin2:
> >
> > from time import sleep
> > from pyautogui import hotkey, keyDown, keyUp
> > hotkey('alt','tab');sleep(1.0);keyDown('b');sleep(1.0);keyUp('b')
> >
> > Det fungerade inte heller med andra fördröjningar.
> >
> > Att skriva med pyautogui fungerar med andra Windows program med t.ex
> <http://t.ex>. typewrite, keyDown och keyUp. Ovanstånde skrev t.ex
> <http://t.ex>. detta 'b' i Thunderbird.
> >
> > Apropå include i Forth så kanske block inte är så dumt ändå, ty det
> använde Fig-FORTH on ABC 80 / implemented by Robert Johnsen
> http://libris.kb.se/bib/559535 .
> >
> > Den FORTH:en har också orden P! ( n port -- ) och P@ (d.v.s. PÉ) (
> port -- n ) för Z80-OUT respektive Z80-IN. Jag tycker de behövs för ljud
> och för att byta mellan 40 och 80 tecken, men andra namn är kanske mer
> standard.
> >
> > Varför används en gammal Z80 CamelForth v1.01 som utgångspunkt när
> det finns en nyare version 1.2?
> > http://www.camelforth.com/download.php?list.1
> >
> > Den 2018-02-19 <tel:2018-02-19> kl. 22:22, skrev Erik Isaksson:
> >> Helt riktigt, den lyssnar på WM_KEYDOWN och WM_KEYUP.
> >> mvh Erik
> >> On 2018-02-19 08:46, Robert Juhasz wrote:
> >>> Kul att det funkar!
> >>>
> >>> Jag såg från issue-trackern att du löste det med abs-filer o
> diskimages och dos. En sån diskimage borde också gå fint att använda i
> Peters unix-emulator....
> >>>
> >>> Include är helt klart första prio när jag nångång får tid att hacka
> på det. Det borde vara ganska rättframt: filhanteringsrutinerna verkar
> funka, och sen är det bara att läsa in bitar av en källfil till en
> buffert och köra INTERPRET på den tills filen är slut...
> >>>
> >>> Ang abcwin: kanske ditt makroprogram genererar keypress events
> medan abcwin kanske direkt tolkar keydown/keyup events på lägre nivå?
> Har själv fått erfara att det inte är samma sak..... Erik, kan du
> upplysa oss? ;)
> >>>
> >>> Robert
> >>>
> >>> Skickat från min Xperia™-smartphone från Sony
> >>>
> >>> ---- Abinsium skrev ----
> >>>
> >>>> Jag fick camabc att fungera i morse, se denna video:
> >>>> https://youtu.be/7sdSJXZ3gX8 (1 min)
> >>>> Det står lite i beskrivningen och i (stängda) issues på Github om hur
> >>>> man gör. (Jag beklagar ljudet i videon, men det beror troligen på att
> >>>> jag har den senaste versionen av Windows 10 för insiders i fast ring.
> >>>> Det var inte lika dåligt inspelat ljud i förra versionen.)
> >>>>
> >>>> Det vore också bra om man kunde köra CamABC i andra ABC80-emulatorer:
> >>>> t.ex <http://t.ex>. den för Linux som fungerar i Raspberry Pi.
> >>>>
> >>>> På sikt kanske det kommer include och included i camabc:
> >>>>
> https://www.complang.tuwien.ac.at/forth/gforth/Docs-html/Forth-source-files.html
>
> >>>>
> >>>> Eftersom man inte kan pasta in kod i ABCWin2 så försökte jag med detta
> >>>> system i Windows 10:
> >>>> https://pyautogui.readthedocs.io/
> >>>> Det funkar för andra Windows-program, men tyvärr inte för ABCWin2.
> >>>> I Kommandotolken, om ABCWin var senast aktiva program:
> >>>> pip install pyautogui
> >>>> python
> >>> >from pyautogui import press, typewrite, hotkey
> >>>> hotkey('alt', 'tab'); typewrite('bye\n', 0.1)
> >>>>
> >>>> Resultat: ABCWin väljs, men inget skrivs.
> >>>> Detta fungerar dock:
> >>>> hotkey('alt', 'tab'); hotkey('alt', 'h'); hotkey('a')
> >>>> Detta visa about-boxen.
> >>>>
> >>>> Känner någon till något system som kan skriva automatiskt i ABCWin 2?
> >>>> Det vore bra om det fanns en paste-funktion i ABCWin som klarar ÉéÜü
> >>>> m.fl <http://m.fl>. ABC80-tecken.
> >>>>
> >>>> Det är lite jobbigt nu när man bara kan skriva in program för
> hand, men
> >>>> inte spara dem.
> >>>>
> >>>>
> >>>> Den 2018-02-14 <tel:2018-02-14> kl. 12:41, skrev Anders Käll:
> >>>>> Intressant, skall se om jag får tid till helgen att testa....
> >>>>>
> >>>>> Den 11 februari 2018 22:26 skrev juhasz <juhasz at abc.se
> <mailto:juhasz at abc.se>>:
> >>>>>
> >>>>>> Hej!
> >>>>>>
> >>>>>> Här en lite random post med ett gammalt projekt som jag la upp
> på min
> >>>>>> github - lite vagt relaterad till några kommentarer på listan om
> FORTH och
> >>>>>> filrutiner i UFD-DOS...
> >>>>>>
> >>>>>> CamelFORTH för ABC80!
> >>>>>>
> >>>>>> Jag hittade den gamla FORTH:en för ABC80 som distribuerats via
> ABC-klubben
> >>>>>> men var lite frustrerad över att den inte hade någon källkod
> (nån som
> >>>>>> har?). Sedan har jag alltid velat porta en FORTH (vem har inte
> det...)
> >>>>>>
> >>>>>> Resultatet: CamelFORTH till ABC80. Det är bara ett par sena
> kvällars jobb
> >>>>>> bakom det hela så det är lite inkomplett:
> >>>>>>
> >>>>>> Det som finns:
> >>>>>> - grundläggande port från CP/M till ABC80 (RAM börjar på 32768
> <tel:32768> istf 0,
> >>>>>> bort med CP/M i/o)
> >>>>>> - grundläggande abc80 i/o
> >>>>>> - visst grafikstöd
> >>>>>> - grundläggande interface till filhantering
> >>>>>>
> >>>>>> MEN det finns viktiga saker som ännu inte funkar:
> >>>>>> - LOAD och SAVE! Klubbens FORTH använde ju det gamla sättet med
> screens.
> >>>>>> Jag kanske hade tänkt något lite modernare med filer i
> filsystemet som man
> >>>>>> laddar...
> >>>>>>
> >>>>>> Den assembleras just nu precis som originalet med en CP/M
> assembler under
> >>>>>> CP/M (Z80MR.COM <http://Z80MR.COM>). Sen bygger man en diskimage
> till ABCWin (se cam.bat <http://cam.bat>)
> >>>>>>
> >>>>>> Kolla in https://github.com/robertjuhasz/camabc om det verkar
> >>>>>> intressant...
> >>>>>>
> >>>>>> Robert
> _______________________________________________
> ABC80 mailing list
> ABC80 at abc80.org <mailto:ABC80 at abc80.org>
> http://www.abc80.org/mailman/listinfo/abc80
More information about the ABC80
mailing list