V 0.99j ------- - added the option to replace the 6502 cpu with a 65C02. This is for two categories of people : those who have inserted a 65C02 cpu in their real oric and those who want to use the current release of GCC for 65C02 (it doesn't support the Nmos 6502 for now). By the way, if you want to deliver programs for the oric, please don't use 65C02's extended instruction set as very few people have this nice superior 65C02 in their real oric (remember the cpu is soldered on the motherboard...) - oops, when switching back to 31250 Hz sampling rate in 0.99h, I only made half of the modifications... this is why samples sound hashed. - changed the synchronization scheme if a SoundBlaster card is detected, in this case the sound interrupts drive the emulator and the timer interrupt is no longer used (that's good news for all those who complain their clock was changed after exiting euphoric, and euphoric goes hi-fi too). If a soundblaster card cannot be used, the timer is used as before. - display some text at initialization so that people who experiment with oric configurations can see if they get what they want. V 0.99i ------- - no linux version this time... it will be easier to release a final version if I can focus on one host only (also, the future of games is not clear under Linux. One day SVGAlib is stopped, the other day a SVGAlib Quake version appears, and XFree86/DGA seems very unstable... let's see) - a new ACIA 6551 emulator I'm proud of ! It implements all features of the real chip, even some undocumented ones 8-) The previous emulator had some concurrency problems (that's a major difficulty with such a real-time program emulating several concurrent chips). - negative edge detection on the K7 port added. - Telestrat's mouse emulation - lightpen add-on emulation - much stronger DPMI code: as a result, Euphoric now runs under NT 4.0. There are still some strange things, and physical access to some hardware ports is not granted under NT, so sound does not work yet, and the emulator is synchronized to a 0.7 MHz oric... - an up-to-date manual in HTML format ! (only in French for now...) V 0.99h ------- - added AltGr as a new key in oric keyboard matrix, so Sedoric doesn't interfere when trapping the FUNCT key. - updated international Basic roms, and national ASCII sets are now provided as files to CLOAD. - i'm not authorized to number a real french Telemon as 2.5, so let's call it 2.4french. - IJK joystick emulation added. - Reset the PSG envelop timer as soon as a new envelop period is written, this was the reason for some strange key clicks. - switched back to 31250 Hz digital sound for Dos version. This is far better for SoundBlaster cards, and sound should be (quite ?) perfect now ! V 0.99g ------- - I finally removed the programmable keyboard, it aimed to be a better keyboard than the oric, without any change in oric firmware, but it became very complicated and a lot of gamers didn't understand two keys cannot be held at the same time. So, direct keyboard only: it is even closer to the original, with grey keys on the left having the same functions as on the oric (i.e Tab is an oric ESC, Caps is an oric CTRL). For convenience, grey keys at the bottom have the expected behavior (Ctrl is Ctrl, Alt is oric's FUNCT key) - international users, don't cry... I've some news for you: with some black magic (who will have the curiosity and go for a sight ?-), I inserted a third key table in oric's rom, so that the AltGr key (FUNCT) has the expected behavior And you have your international ascii set defined, using a word processor won't give any surprise with a printer with the same national charset (WYSIWYG on the oric, er... quite 8-) For those who do have a non-US keyboard but don't want their national ASCII set, you just have to load the normal charset and you will find the brackets, etc. at the expected place. These modified roms are not cheating: you can use them on a real oric and redraw the keys. However, the only bad thing has to do with the additional key just right to the left SHIFT... this one has been added in the virtual oric's keyboard matrix (btw, when the emulator can't be exactly the same as the real thing, let's try to make an oric be the same as the virtual one: i've just added that key in a real oric keyboard to get a real french keyboard 8-) Just a final note: Sedoric uses the FUNCT key to provide shortcuts, you will need to type QUIT in order to get the alternate keys. Telestrat users get the biggest part of the cake with an update of Telemon: now QWERTY and AZERTY really do what they mean, and ACCENT too. - I hope you will like it folks, I spent a big amount of time for the new oric routines and for the charsets... 8-) V 0.99f ------- - oops, euphoric.ini was not up-to-date in previous release - oops, I had introduced a floating point read for the clock frequency, and people without fpu were not able to run euphoric any more... sorry guys - oops, sound line was not active in environment screen (F2 was) - oops, a typo in Asy(n)chronousController and atmos users were not able to use the serial add-on... V 0.99e ------- - note to game players: do you remember some games were not nice with your printer ? Well, it's the same with the emulator, so, the printer is off by default, even if you select one in your euphoric.ini. The power switch is in the environment screen. - 10 blank disks may be created per directory, don't abuse of it or you won't remember what you have on your disks... - slow refresh problems during some CLOAD"" fixed... - record button of taperecorder disabled if tape is write-protected V 0.99d ------- - shouldn't crash anymore at exit when no soundcard was detected - serial port selection should work now - oric1 selection should work too - flush the output to the printer after each character V 0.99c ------- - testers are really nice guys: raising the clock of a poor oric beyond 100 MHz, listening to a taperecorder without any tape inserted, etc. Btw, thanks again, folks ;-) - thanks for the UK keyboard definition file, Jon. - oh, I forgot to mention... if someone asks you the best WAV-player in the world, tell him about euphoric's virtual tape recorder... I haven't found any other WAV-player able to successfully transfer oric programs to a real oric tape, just tell me if I'm wrong (all those beautiful players shouldn't rely on Bill's drivers, sure...) V 0.99b ------- - Sound Blaster driver added for Dos version. V 0.99a (yes, still un*x only) ------- - euphoric has been reported to run on OpenBSD (but not sure about sound), waiting for news about FreeBSD, NetBSD, etc. - oriclite is back again for small 386 cpus (it's an oric, but with 64k ram only. Upper 16 KB are loaded with your Basic rom) - obviously, div operator is not a replacement for '/' in the new gnu as. This was the reason for both the Q mode and digital sound problems... - changed the patch for tape synchro detection so that reset function keys remain active when no synchro is found in a file (software emulation mode. Hardware emulation doesn't have such a problem) - context-sensitive help in environment screen - customizable environment screen: you can translate it in your language through the euphoric.ini file (well, it's much easier if you use ASCII...) - new functions in environment screen: ejecting a tape or disk, creating a blank tape or disk, moving/breaking/repairing the write-protect tabs of disks and tapes, and even a play button on the tape recorder for those who were used to listen the tapes before loading programs 8-) - function keys are active during the environment screen, you can reset the oric, quit the program, change keyboard/sound... - new function keys to make your oric go faster when you want it (how can some programs use such slow filling routines ?-) - more precise handling of the READY, HLD and HLT pins of the FDC. The electronics behind these pins is now different for the Microdisc, the Telestrat, and the Jasmin (READY is not connected to the drive on the Microdisc !!) HLD and HLT seem very strange on the Jasmin... but it works again... - changed the io address decoder of the Telestrat: it seems the first via is not replicated in page 3... V 0.99 alpha (still linux only) ------------ - euphoric.ini file for precise configuration of your oric. No need to change names of roms anymore... Choose Oric1/Atmos/Telestrat configurations, Microdisc or Jasmin controllers, drives, add-ons and even ram styles 8-) - CRC computations added at last ! I wasn't including all the bytes in the computation... new generated disks have correct CRCs in, but CRCs are not checked when reading so that you will have some time to update your disks... - changed the code to be compiled both in a.out format and elf format ($#@, where is the '/' operator with the new gnu as ??). V 0.98a (still linux only) ------- - full emulation of the Microdisc's EPROM_SELECT is back in... (fingers up those who have noticed I was cheating starting from v0.8 !). Also allows new 16K eproms to be used: try Telestrat's firmware on the atmos ! V 0.98 alpha2 (linux only) ------------- - detects 1/50s chunks with no sound and doesn't output them, to avoid slow desynchronisation. - changes the sampling frequency to 25600 Hz, in order to have whole fragments every 1/50s: seems a little better but still a overhead. - wait the release of the ESC key when exiting the configuration screen. V 0.98 alpha (linux only) ------------ - digital sound inside: full PSG emulation, allowing the playing of samples, noise pitch, etc. Sampling frequency : 31250 Hz, frequencies higher than 16kHz are filtered. Requires Voxware 3 (fragment size programmable), for low latency DMA. However, sending chunks of 1/50s to the Voxware driver seems to introduce a big overhead (while saving the sound to a file and playing it afterwards is perfect... so I have to find a workaround). V 0.97c ------- - makes first drive the selected drive when rebooting the oric - fixes the level sensed on PB0-2, because some folks program these as inputs! - removes the weak noise heard when no sound is emitted - allows clock frequency to go up to 99.9 MHz in configuration screen, allows to switch joystick emulation, fixes the keyboard delay bug. - disables keyboard switching when Keyboard.def file not present - repairs the joystick emulation, allowing arrows keys again V 0.97b ------- - fixed the behavior of the programmable keyboard (a key could be depressed too fast, thus be not detected by the oric) - 3 speeds cursor movements in configuration screen - alphabetic sort of directory lists V 0.97a ------- - repaired dump/restore mechanism V 0.97 ------ - With the addition of an hardware tape emulation I'm proud of, Euphoric is on the path to the final release (last major addition should be digital sound instead of FM synthesis) Check the option in the configuration screen to use this tape simulator, because it's off by default (mostly, only true nostalgic people will use it, enjoy for example Lone Raider 's loading). Previous system is still here for fast loading and ease of use (you don't have to go through the configuration screen to select a tape, you don't have to press the RECord button of the tape when CSAVEing...): it works by patching selected locations in Oric-1 and Atmos roms. Some programs (few) don't use at all the low-level routines in rom, so they require the use of the hardware emulation (roms are not patched in this mode). Of course, a new tape image format is used in the hardware tape mode: it is simply a sampled (digitized) image of real tapes. Shannon went here so it is a 4800 Hz sampling rate, 1 bit depth samples. Right, this format is harder to hack in, but it will soon allow you to transfer programs to your Oric on real tapes (and perhaps more useful for most people: easier tape transfers from real oric, ability to run protected software without patching them, so you can legally run your old software, ...) ! Note that you won't be able to load byte-format tapes in the hardware mode (once again, format is different: you can CLOAD them with default mode and CSAVE them in hardware mode if you are a real oric fundamentalist 8-) Also, when using hardware mode, don't forget you *need* to press the RECord button of the tape before writing to it, don't forget you will overwrite the previous contents of the tape unless you position the tape with the fast rewind and fast forward buttons (a counter in real minutes/seconds is provided, but you will need to write program information, location, etc. on a piece of paper ;-), and don't forget to release the RECord button after writing... (that was tape day-to-day life 8-) If this frightens you, protect your valuable tapes against writing (using file access modes under the host). Note also there is no need for a PLAY button (it is always pressed), since a remote control lead is bundled in the package... Final word, have no fears about "errors found" messages, you won't get one with this highly reliable DAT, and your programs won't fade with time... - Charset redefined in configuration screen - And... yes, Vaggelis, I know I still have to repair the dump/restore ;-) V 0.96 ------ - Added a configuration screen to swap disks, keyboards, etc. - F6 is now the Jasmin's boot button. V 0.95a ------- - Last patch for the programmable keyboard 8-) I add a classical reader/writer synchronization problem, so the oric sometimes caught only one of two keys send in two different locations of the keyboard matrix (when the routine has already scanned some of it). V 0.95 ------ - Users of the previous national keyboard were somewhat disturbed by the fact some software produced US strokes, depending on the routines they used. So, this new programmable keyboard uses a hardware mapping between PC keys and oric keys, instead of forcing an ascii value in the keyboard converting routines of the different oric roms (see Keybfr.def file). Of course, the original oric keyboard is still there, for games that would otherwise oblige painful positions, and function key F3 alternates between the two keyboards (help key F1 displays the current keyboard). Moreover, the programmable keyboard allows for *fast* typing (by depressing oric keys when *you* are not fast enough 8-) : now it's time you use your oric for text-processing !! - Sorry for the dump/restore I still have not repaired... - And I've been told Bill don't want to let me play music, and that his clock is disturbed by my higher interrupt frequency. Ok, everybody will take the right conclusion (Linuuuuuux... 8-) V 0.94a ------- - A fix to the new national keyboard support introduced in 0.92 (I missed the point that the CAPS state may be changed by software) - No time to fix the dump/restore feature, broken with 0.94 again : my hard disk had a hard failure and its whole content is lost 8-( - No time to explain to IBM* and Microsoft* windows users how to benefit from drag&drop feature, or associating '.dsk' type to the euphoric program, I have to completely rewrite the documentation... V 0.94 ------ - Euphoric for DOS becomes DPMI compatible. This means that you can run it under near every DPMI server (currently tested: OS/2 Warp, Windows 3.1, Windows 95, Quaterdeck's QDPMI, Qualitas' 386MAX, CWSDPMI). There's about no performance penalty with DPMI servers under DOS (Quaterdeck, Qualitas and the free CWSDPMI). Euphoric works great under OS/2 too. It suffers from the bad performance of Windows 3.1, it doesn't work yet under Windows NT (keyboard events lost). It works with Windows 95, but you surely don't want to use such a bugged down system. V 0.93a ------- - I have switched to an ELF distribution on my system, but will continue to link a.out euphoric executables (so you need aout versions of libc.so and libvga.so). Soon I will get rid of svgalib (I only use it to init screen mode). DOS executable is still a COFF converted to EXE (but you surely don't care 8-) - Oops, as the keyboard is polled in the linux version, euphoric was stuck when the 6502 hung. Mhh, I can restore the old behavior (only power reset was active in such a case) but I decided to introduce a small difference with the real thing (the NMI button is now active), maybe one day you will thank me ;-) - Another keyboard problem corrected, in Dos version (hum, second time I fall in the same trap: different scancodes under Linux and Dos) V 0.93 ------ - New display : with the -q option, you will get *rectangular* pixels like on your TV. DON'T use on a LCD matrix. The vga mode used is called mode Q (it is 256x256x256, so a 'CUbe') and should work with every vga card and monitor. V 0.92 ------ - First support of P.A.S.E interface (joystick on parallel port) with -p option: arrows on the numeric keypad for directions and 0 for fire button. - Telestrat users have the choice to use the PASE joystick as above or the standard telestrat's joysticks (-tj option) - New keyboard handler allowing more flexibility and configurability (but old international keyboard definitions have to be changed) - A bug fixed in linux version: keyboard events were missing in the simple oric configuration, causing stuck keys. - Different handling of Jasmin's interrupts, the previous trick (executing one instruction after a RTI, even if an interrupt was pending) caused some programs to randomly fail (eg. Painter). So, now a virtual timer allows to reproduce DRQ interrupts every 31,25£s (approx.), as on the real drive (250 Kbps rate) V 0.91b ------- - Oops, I forgot to update the Sector register of the 1793 after a Read Address command. - ACIA on the Atmos moved to address $031C again (no, it's not a tango). I have checked the address decoding of the real microdisc allows for such an address. V 0.91a ------- - Simulates the movement of drive heads, so it is easier to cope with strange habits like late selecting of drives. - Simulates the rotation of the diskettes (allowing to read sectors or sector- ids in a circular way) Look for example at the interleaving (1:2) of RANDOS diskettes (track 3 and above). V 0.91 ------ - Changed the FDC 1793 emulator to handle a new disk image format (really a bit copy of a real disk), this will allow every exotic format (eg. the Randos system formats the first three tracks with 16 sectors (256 bytes), and the rest of the disk with 9 sectors (512 bytes)). The bad news is your disk images are bigger (every track is 6400 bytes, with datas, sector id's, gaps, indexes,...) and you have to update your disk images with the oric2mfm utility (sorry for that), but this will soon bring great rewards for both virtual and real oric users 8-) (anticipating, you can already examine M$-DOS disks with Nibble, like on the real Oric: use the dos2mfm utility to convert a 720K M$-DOS raw image to the new mfm format. M$-DOS raw images are easily obtained under Unix with the standard dd command, or under M$-DOS with the rawread utility) V 0.9a ------ - Oops, I forgot to correct the serial interrupts under Linux. Hope it's ok now V 0.9 (29/10/95) ----- - Oric goes out with his girlfriend Jasmin again 8-) (FDC 1793 simulator separated from Microdisc electronics, Jasmin electronics added, multiple sector read command added, delayed INTRQ signal simulated differently, artificially delayed IRQ detection after RTI instruction to allow for delayed DRQ signal) - Setting X register to 0 in the patch of the read tape synchronization routine (coming soon : hardware simulator for tape loading time nostalgics ;-) V 0.8b ------ - Added additional cycle on absolute indexed and indirect indexed read addressing modes, and branch instructions, when crossing a page boundary. Timings should now be exactly similar than on a real 6502. - Improved the B flag implementation (still have to better implement N and V flags in decimal mode). V 0.8a ------ - Oops, I forgot to modify the Real Time Clock module, sorry... V 0.8 (386) (01/10/95) ----- - At last ! A cross-over of 0.7alpha and 0.7h achieving the speed of versions anterior to the introduction of the disk controller. Owners of fast 386 are able to enjoy it (and now... rushing to the 286 ;-) - PS/2 compatible V 0.7h (486) ------ - Serial interrupts are in ! The 6551 ACIA emulation is now complete, the communication softwares of the Telestrat run identical to the original. V 0.7g (486) ------ - Move the IO address of the RS232 interface on the Oric 1 and Atmos. V 0.7f (486) ------ - Patch for international keyboards on the Telestrat. - Fix the RS232 interface, it works in polling mode...(interrupts not implemented yet). V 0.7e (486) ------ - Repair the broken dump/restore mechanism. - Generously give a RS232 interface to Oric1/Atmos users (but I have not tested it yet), and a real-time clock extension. V 0.7d (486) ------ - Oops, I forgot to copy files from Linux to Dos, so neither the screen aspect nor the F7/F8 keys were corrected under Dos... - First emulation of the real time clock extension (with Telestrat for now) - Updates the Bios timer when exiting from the Dos version (no need for such a hassle with unix of course. Hey, have you tried Linux ?) V 0.7c (486) ------ - Restores the correct aspect of the screen (during a power reset) lost with 0.7 - Handles differently the F7 and F8 key for the Telestrat. - Modification of the FDC 1793 module to work around a nasty behaviour of Stratsed: selecting a drive AFTER sending a read or write command and BEFORE the actual transfer (not always the case, so... a bug ?) - First emulation of the ACIA, but still lacks interrupts handling. V 0.7b (486) ------ - New 6502 emulator, I have made bencharks and it is faster thanks to fewer cache misses (despite additional jumps) V 0.7a (from 0.6e) ------ - Faster clock code and keyboard reading. - First TeleStrat emulation ! Partial emulation of the second VIA, no ACIA emulation yet (will come quite soon... 8-) V 0.7alpha ---------- - Divergent release...no bank switching mechanism (so no disk system), but a new 6502 emulation optimized for 386, a faster keyboard reading, and a faster clock code. Should be the base for a complete release optimized for 386, slow with bank switching (like 0.6alpha1) but fast anywhere else (to do: a modified Sedoric with no programmed function keys). V 0.6e ------ - Monochrome VGA option added (tell me if you don't like the shades) - Linux Ctrl-C not caught by svgalib any more, thanks to Alexios Chouchoulas. V 0.6d ------ - Can now hardcopy several screens during a single session. - Oops, a bug fixed (introduced with 0.6a, affecting the CSAVE command) V 0.6c ------ - Can now format virtual disks. V 0.6b ------ - Corrected lost interrupts with the DOS version (when go32 switches to real mode for disk access) V 0.6a (19/06/95) ------ - New 6502 module with integrated paged memory mechanism. - Optimized VIA 6522 emulation. - New disk image format. - Up to four drives. - translation of some DOS scan codes to Linux corresponding ones. - Hardcopy (PrtSc key) V 0.6 alpha3 ------------ - Fix the deplacement of the drive's head. Still not have time to add track and multiple sectors read/write, though. V 0.6 alpha2 ------------ - Faster memory switching mechanism (approximative also). Final release should bring the memory scheme in the heart of the 6502 emulator in order to optimize the whole thing. Notice also the scan codes are sometimes different under Linux and Dos, it works ok with Linux, but under Dos, AltGr is interpreted like the Alt key (Oric's FCT key). V 0.6 alpha1 ------------ - First floppy disk controler emulation, it works... but the memory switch mechanism is far too sloooow. Why don't they stop switching, even when waiting for user interaction ? V 0.5f ------ - Oops, didn't notice I deleted one line. Problem with the AltGr key. V 0.5e ------ - Oops, two bugs fixed (one in the state restore, one in national keyboard for oric1) V 0.5d ------ - Dump/Restore added. F9 gives the opportunity to save the state of the oric, and the -r parameter on the command line allows to restore this state. See manual for applications. V 0.5c ------ - Let's say that 0.5b was so similar to the Oric that even the tape routines were so slow... V 0.5b ------ - Add the behaviour of the oric when it hangs up. The only solution then is to unplug and plug again the power... V 0.5a ------ - Add a on/off switch for sound (F2) V 0.5 ----- - International keyboards supported (look at the manual). - Speed index argument for 386 owners who don't have the processing power to run the emulator at nominal speed (or bigger cpu owners who want to try a speedy oric). - ORIC environment variable to ease execution from several directories. - Better error messages for first time Linux users. - New documentation. - A small bug corrected in PSG emulation, triggered by DPTLQ. V 0.4c ------ - Change in file handling : it is now possible to save a file without name (CSAVE"") This is not recommended but some programs use this feature. The file gets the name "________" on the host. V 0.4b ------ - All BIOSes don't use the same order for Red/Green/Blue...so, don't use the Bios anymore. - Printer support added by default. File "Printer.out" is the result. V 0.4a ------ - Oops, I must have been in a hurry with V0.4 : a bug in the frequency of the sound, and in the noise too... I still need to find a way to make square waveforms with the adlib, and noise could be better. - Have improved the screen mode changes by examining the real oric. V 0.4 ----- - At last some sound ! Many thanks to Gerton Lunter who sent me his emulation code of the AY-3-8912 (the Spectrum 128 has the same chip), from which I have been inspired a lot. V 0.3d ------ - Unofficial MOS 6502 opcodes added. This allows some programs to run. I don't have time to look if they use them or if they have bugs... V 0.3c ------ - A modification to the display code and the synchronization, so that smaller CPUs (486/25 and less) have a better screen refresh. Animation is not so jerky on these CPUs now. V 0.3b ------ - Two gadgets added : a help line on top of the screen (de)activated by F1, and a simulation of the screen aspect when powering on the oric... V 0.3a ------ - Small detail corrected in PSG (but still no sound yet) - Thiner emulation of the tape, so that programs like Lone Raider or Trouble In Store can load. V 0.3 (14/05/95) ---------------- - Complete rewrite of the display code (it's mode X now). Synchronization is far better, the speed should be the same on every machine. Powerful machines will just benefit of more screen refresh (up to 50 per second). It also allows me to get rid of GASP, so...this is a wonderful world ! - Partial rewrite of 6522 emulation : cleaner now and (almost) exhaustive... V 0.2.2f -------- - Change of the tape handling for two reasons : it's easier now to use multi- parts programs, and the emulator can read JF.Fabre emulator's format. V 0.2.2e -------- - Rewrite the 6502 emulator for cpp preprocessor. When I change the VGA code, I will throw GASP... - Clock count of the NOP instruction (Oops, had forgot it...) - Emulation of reset button and power on/off reset. - For DOS version, disable keyboard interrupt during disk access in real mode (the ENTER key looked sometimes pressed after such access) V 0.2.2d -------- - Correction of the clocks count of conditional branching instructions. V 0.2.2c -------- - Bug fixes. Oric1 rom was not patched correctly to allow the CLOAD command. BRK instruction was not correctly emulated. V 0.2.2b -------- - Correction of a little bug : stores now the oric name of the file read by CLOAD, in order that the top line displays it correctly. I still have to test if CLOAD and CSAVE work with the Oric1 rom, since I write the patch of that rom just with a listing of it. V 0.2.2a -------- - Near completion of the VIA emulator. A quite correct handling of port A now allows programs to detect that no joystick is connected. Timers are now as precise as with the real oric. V 0.2.2 (05/03/95) ------- - Port of the V 0.2.1 to the linux i386 target. Why ? Previous versions have been developed with PharLap DOS Extender, a really good product, but I would have to pay one more time to distribute the emulator since I don't have the runtime kit, and the development kit was enough expensive... So I decided to use DJ Delorie Dos Extender, and his port of the GNU environment. This has the advantage to allow a DOS/Unix version quite similar, but the port has been very painful due to the lack of support for assembly programmers, and the AT&T assembly syntax different from the Intel one, not to mention the bugs of GASP, the assembly preprocessor, nor the very approximative checking of GAS. So bugs introduced by the port might still hide somewhere... V 0.2.1 (25/02/95) ------- - Speed identical to the real oric, whatever CPU you have (min 486SX/25 ?) - BCD computations emulated - A bug corrected with the correct handling of the IER register (VIA). Before that, a timer interrupt rising before the initialization of the IRQ sometimes happened. - A patch to the handling of port A in order that every program succeed in reading the keyboard, since some (incorrectly) use the acknowledged port. V 0.2 (12/02/95) ----- - Loads and runs an Atmos rom (in fact, my 1.3 modified one) - patches the rom to allow CLOAD and CSAVE (I still have to test STORE and RECALL) - Displays Text mode with background and foreground attributes, simple and double height, normal and alternate charset, and reverse video (blinking is missing). Identical to the real oric, at the pixel level, and allows the redefinition of character shapes (but it does not affect characters already on screen, so Invaders* lacks some animation) - Displays Hires mode with 3 text lines (I have to figure out what the ULA exactly do to allow semi-hires modes like the one in Doggy*), and handles the switch to/from Text mode. - Basic emulation of the 6522 VIA : PC timer mimics the standard 100 Hz timer 1, basic emulation of port B and PSG in order to allow the keyboard simulation. - Lacks BCD computations, so some programs don't display correctly the score. V 0.1 (29/01/95) ----- - A very approximative display with 80x25 PC standard mode, but it works... the rom runs until the Ready prompt after having patched the wait for 3 interrupts to switch to text mode. - A bug fixed at 4 o'clock : an ADC was executed instead of each indirect X indexed ROR, very annoying for the floating point computations (so you learn that the Oric has "<58225.792 BYTES FREE" ...BTW, incredible to use floating point instead of integer computations) - No emulation of the VIA yet : no timer, no keyboard (the PC keyboard interrupt writes the ascii code in the oric Basic's keyboard buffer. I remember also another night(mare) hunting for a bug in this routine affecting the oric stack register, ouch...)