Vad ska det bli av Cecilia ? Paul Svensson I garb nr 1 1986 skriver Sven-E: Vår fina gamla FCPU är ju som bekant en gammal dator som är fullt modern men saknar programvara. De som har sett FCPUn vet också att den är mikroprogrammerbar. (---) Som alla vet så behöver vår fina FCPU mycket arbete för att vi ska kunna leka med den. Därefter skriver han om olika projekt, både lång- och mera kortsiktiga sådana. Nu, drygt ett år senare, det vara dags att titta vad som har hänt, och vilka vilda ideer vi har för Cecilia. Mikrokodsassembler. 1985 gjorde bland andra Sven Eriksson som PUM-projekt en mikrokodsassembler till Lysators FCPU Cecilia, konstruerad som en korsassembler att köra på IDAs pdp11 Obelix. Projektet innehöll en assembler och en länkare, båda skrivna i C. Tyvärr blev assemblern inte riktigt klar, och när jag såg vad som behövde göras för att få den att bli användbar, beslöt jag att börja från scratch, och skriva om alltihop, men med hjälp av lex och yacc, två UNIX-verktyg för att konstruera scanner och parser. Nu finns en körbar assembler på Obelix, på filen ~d22/fcpu/ua/ua, men ingen länkare, varför assemblern producerar laddbar kod direkt. Terminalgränssnitt. Under hösten -86 påbörjade Krister Joas och undertecknad ett projekt inom kursen digital konstruktion. Projektet innehåller åtta RS232 terminallinjer, 8 k 32bit eprom till mikrokod och en parallell buss för yttre enheter. Vi har nu ritat färdigt (nästan) allting, och håller som bäst på att vira ihop det hela. Tyvärr ligger vi bägge i lumpen, varför arbetetet sker lite sporadiskt, men det går i alla fall framåt. Växellinje. Med terminalgränssnitt till Cecilia vore det en bra ide att kunna köra FCPU från ett vanligt PUL, genom någon av IDAs (ISYs) växlar. Terminallinje till Obelix. En terminallinje till Obelix för dataöverföring mellan Obelix och Cecilia skulle kunna användas till att snabbt få över kod genererad av mikrokodsassemblern. Den nuvarande metoden med filöverföring till Linus, utskrift och laddning av hålremsa, känns alldeles för tungrodd när man är van vid interaktivt terminalkör. Monitor. I början av -86 kom Göran Karlsson (Oden) med iden att skriva en monitor till FCPUn. Monitorn skulle vara menydriven och skärmorienterad och kunna hantera minnen och register i FCPUn på ett överskådligt sätt. GK skrev ihop en ordentlig specifikation, varefter undertecknad hackade ihop en liten modellmonitor på Obelix för att visa hur det hela skulle kunna se ut. Modellmonitorn är skriven i C, men vissa ansatser gjordes till att formulera koden så, att det ska vara lätt att översätta till mikrokod. Modellen finns directoryt ~paul-s/project/fcpu/display. EnanvändarFORTH. En kärna till en mikrokodad enanvändarFORTH skrevs av Inge Wallin under våren -86. Denna kärna innehåller allt väsentligt utom IO, har sen dess assemblerats med mikrokodsassemblern på Obelix, men inte körts på Cecilia. Koden till den här FORTHen blir angenämt liten, drygt 300 ord, trots att vissa ansatser till hastighetsoptimeringar gjorts, bland annat att hålla toppen på datastacken i register. Nu i vår har jag hackat vidare på FORTHen, bl a ska lägga även toppen på returstacken i register. Skivminnen. Eftersom det inte finns någon dokumentation på ATS-bänkarna som ska fungera som buffertar mellan diskmaskinerna och FCPUns IO-skåp, kan det bli svårt att få det hela att fungera, den vägen. Ett alternativ är att bygga SCSI-gränssnitt till IOskåpen, och koppla upp det mot det SCSI-snitt till diskarna som är under utveckling, av bland andra Johan Struwe. Möjligen skulle det gå att hänga SCSI direkt på CUIU-lådan, men det måste undersökas närmare först. FleranvändarFORTH. Att bygga en fleranvändarFORTH borde inte vara ett oöverkomligt projekt. En skojig sak är, att eftersom FORTH inte använder en massa register och fasta minnesadresser (om man gör den på ett vettigt sätt), skulle det mycket väl gå att skapa ett system där ett processbyte bara tar några få mikrosekunder. Något för realtidsapplikationer? Virtuellt minne, Riktigt OS. Något att längta efter ett bra tag.