Go to advanced search

by Memotech Bill
Tue Jul 30, 2019 6:49 am
Forum: Off topic discussion
Topic: My own 8-bit RETRO Homecomputer: RhoCoCo
Replies: 139
Views: 38345

Re: My own 8-bit RETRO Homecomputer: RhoCoCo

If you know Z80 assembler, learning PASM (Propeller Assembler) should not be that difficult. Things to get used to: There is no indirect addressing. You have to use self-modifying code. There are instructions specifically for changing the source or the destination address of an instruction. Remember...
by Memotech Bill
Sun Jun 02, 2019 6:26 am
Forum: Off topic discussion
Topic: My own 8-bit RETRO Homecomputer: RhoCoCo
Replies: 139
Views: 38345

Re: My own 8-bit RETRO Homecomputer: RhoCoCo

for now a prop1 can bring me all these things: providing permanent memory, in the form of a cheap serial EEPROM Loading up ROM images to the Z80's RAM, booting them up, handling and generating the Z80 clock signal. Handling Z80 IORQ's (up to 256 unique read and write requests) handling background N...
by Memotech Bill
Sat Mar 02, 2019 1:38 pm
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 193
Views: 51160

Re: Circle - C++ bare metal environment (with USB)

rst wrote:There is a .zip file with a small patch attached to this article, which should prepare Circle, if you want to build the accelerated graphics samples on Raspbian using the standard compiler.
Thanks, I will try this out and report back on how I get on.
by Memotech Bill
Fri Mar 01, 2019 5:56 pm
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 193
Views: 51160

Re: Circle - C++ bare metal environment (with USB)

Yes, but you get a penalty, if no USB device is attached. But I can increase this value a little bit. Which value did you chose, to get the keyboard running? I followed the example in CUSBStandardHub::EnumeratePorts and picked up a value from pOptions->GetUSBPowerDelay (). For the cheap keyboard I ...
by Memotech Bill
Fri Mar 01, 2019 4:29 pm
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 193
Views: 51160

Re: Circle - C++ bare metal environment (with USB)

If I may make an observation on USB timing, for those RPi models without a built-in hub, the 20ms timeout waiting for the connection of the root device (Routine CDWHCIDevice::EnableRootPort (void) in file "dwhcidevice.cpp") can be a bit short. It was causing me to fail to recognise a keyboard plugge...
by Memotech Bill
Sat Feb 16, 2019 2:31 pm
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 193
Views: 51160

Re: Circle - C++ bare metal environment (with USB)

Such construct can only be used with C++ standard library support I'm not complaining. It is just that it takes a fairly deep understanding of compiler internals (such as the article I referenced) to understand why my first version fails to link, while my second version does not. In terms of functi...
by Memotech Bill
Sat Feb 16, 2019 11:36 am
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 193
Views: 51160

Re: Circle - C++ bare metal environment (with USB)

Mt adventures with Circle and bare metal continue. This code: const char * MakeString (const char *fmt, va_list va) { static CString sText; sText.FormatV (fmt, va); return (const char *) sText; } gave me these link errors: main.o: In function `MakeString(char const*, std::__va_list)': /home/pi/circl...
by Memotech Bill
Fri Feb 08, 2019 4:48 pm
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 193
Views: 51160

Re: Circle - C++ bare metal environment (with USB)

Normally Circle can be build (for AArch32) on Raspbian using the standard compiler (GNU C 6.3.0 at the moment). You have to set an empty toolchain prefix in Rules.mk (or Config.mk) to do this @rst, thank you. Simple when you know how, but I am a complete novice at bare metal on ARM and using high l...
by Memotech Bill
Fri Feb 08, 2019 9:07 am
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 193
Views: 51160

Re: Circle - C++ bare metal environment (with USB)

I thought it worth recording my experience attempting to build Circle on an RPi. I am using an RPi v2 with no overclocking, and a clean install of 2018-11-13-raspbian-stretch-lite.img. The rasbian repositories do include an arm-none-eabi toolchain, which can be installed with "sudo apt-get install g...
by Memotech Bill
Fri Dec 21, 2018 12:55 pm
Forum: Bare metal, Assembly language
Topic: How to disable video scaling
Replies: 5
Views: 1443

Re: How to disable video scaling

The documentation is on the GitHub Issue Tracker for the RPi firmware, not in the Linux code. I think it is also documented in the Forums somewhere, although I failed to find it in a quick search when I first saw your question. Unfortunately, it seems to be missing from the documentation at https://...
by Memotech Bill
Thu Dec 20, 2018 10:49 am
Forum: Bare metal, Assembly language
Topic: How to disable video scaling
Replies: 5
Views: 1443

Re: How to disable video scaling

From the link I posted: Not tested, but I've added a config.txt parameter: scaling_kernel= Where n is: SCALERLIB_KERNELS_TYPES_SINC=1, SCALERLIB_KERNELS_TYPES_SINC_BLACKMAN=2, SCALERLIB_KERNELS_TYPES_SINC_NO_SIDE_LOBES=3, SCALERLIB_KERNELS_TYPES_SINC_HALF_FIRST_SIDE_LOBE=4, SCALERLIB_KERNELS_TYPES_S...
by Memotech Bill
Wed Dec 19, 2018 7:17 pm
Forum: Bare metal, Assembly language
Topic: How to disable video scaling
Replies: 5
Views: 1443

Re: How to disable video scaling

Yes, it can be done. For some options see https://github.com/raspberrypi/firmware/issues/104 . For my own application I did it with code (slightly abreviated): #include <bcm_host.h> #include <interface/vmcs_host/vc_vchi_gencmd.h> static char sSclKer[1024]; // Remember previous scaling kernel void no...
by Memotech Bill
Wed Nov 28, 2018 1:08 pm
Forum: Off topic discussion
Topic: Putting the RPi in the perspective, looking Retro.
Replies: 38
Views: 4114

Re: Putting the RPi in the perspective, looking Retro.

Arthur C Clarke was a great SF author, but the three laws of robotics were Isaac Asimov
by Memotech Bill
Fri Nov 23, 2018 1:00 pm
Forum: Off topic discussion
Topic: My own 8-bit RETRO Homecomputer: RhoCoCo
Replies: 139
Views: 38345

Re: My own Retro homecomputer called RhoCoCo

How old does the Pi have to be before it is retro? When it has a 26 pin header? Or when 128 bit CPUs and PetaByte RAM are the norm? Gert has done VGA, perhaps use a Zero as a VDP/6845 emulator? Thought about exactly that, using a Zero running bare metal as a display generator for a Memotech. But se...
by Memotech Bill
Fri Nov 23, 2018 8:20 am
Forum: Off topic discussion
Topic: My own 8-bit RETRO Homecomputer: RhoCoCo
Replies: 139
Views: 38345

Re: My own Retro homecomputer called RhoCoCo

Yes, the Propeller can tolerate inputs from 5v logic, providing there is a suitable current limit. There is a data sheet somewhere on this. However, there is a potential issue with bi-directional pins when outputting to LS chips. With the current limit resistors in place the pin on the LS chip is no...
by Memotech Bill
Thu Nov 22, 2018 7:49 pm
Forum: Off topic discussion
Topic: My own 8-bit RETRO Homecomputer: RhoCoCo
Replies: 139
Views: 38345

Re: My own Retro homecomputer called RhoCoCo

It is also worth mentioning that the "mode switch" is messy. There is not enough room in ROM (or RAM) for the code and data for both modes simultaneously. So the data for one mode overlaps the code for the other. If doing "Emulation Mode" only, much of this could be simplified. In "Emulation Mode" a...
by Memotech Bill
Thu Nov 22, 2018 7:19 pm
Forum: Off topic discussion
Topic: My own 8-bit RETRO Homecomputer: RhoCoCo
Replies: 139
Views: 38345

Re: My own Retro homecomputer called RhoCoCo

VDP Emulation: The top half of Propellor RAM emulates the 16KB RAM used by the VDP. Another 12KB of Propeller RAM buffers 1/3rd of the raster display. The six video generation cogs chase each other around this buffer. The first two cogs render alternate pattern lines into the buffer. The next two co...
by Memotech Bill
Thu Nov 22, 2018 6:06 pm
Forum: Off topic discussion
Topic: My own 8-bit RETRO Homecomputer: RhoCoCo
Replies: 139
Views: 38345

Re: My own Retro homecomputer called RhoCoCo

One source of documentation for the TMS9929A is the back of the Memotech manuals, either "Memotech BASIC Tutor Reference and Operators Manual " or "Memotech Operator's Manual", downloadable from http://primrosebank.net/computers/mtx/mtxmanuals.htm . Memotech were very good about documenting their ha...
by Memotech Bill
Thu Nov 22, 2018 5:51 pm
Forum: Off topic discussion
Topic: My own 8-bit RETRO Homecomputer: RhoCoCo
Replies: 139
Views: 38345

Re: My own Retro homecomputer called RhoCoCo

@mahjongg, you found the correct code. (I had to download it again to check). Yes the same code can either do "Native Mode", or do a mode switch to "Emulator Mode". This was designed to support the Memotech MTX range of computers which would either use "Native Mode" when running CP/M, or "Emulator M...
by Memotech Bill
Wed Nov 21, 2018 12:55 pm
Forum: Off topic discussion
Topic: My own 8-bit RETRO Homecomputer: RhoCoCo
Replies: 139
Views: 38345

Re: My own Retro homecomputer called RhoCoCo

I think you may have the read and write addresses transposed. Otherwise looks good. The one limitation of the chip is that it has no reset pin, which would be an issue if using a simple Z80 ROM & RAM boot. Using the Propeller to perform the reset solves that. However, while that architecture minimis...
by Memotech Bill
Sun Nov 18, 2018 12:31 pm
Forum: General discussion
Topic: STICKY: Introduce yourself!
Replies: 3511
Views: 93888

Re: STICKY: Introduce yourself!

A Raspberry PI fan since the beginning. I have been lurking on the forum since 2011. Also a Z80 fan, and it is @mahjongg's RhoCoCo that finally persuaded me to put my head above the parapet. I'm into retro-computing, but have no interest in playing computer games. I currently own five RPi's (Origina...
by Memotech Bill
Sun Nov 18, 2018 10:18 am
Forum: Off topic discussion
Topic: My own 8-bit RETRO Homecomputer: RhoCoCo
Replies: 139
Views: 38345

Re: My own Retro homecomputer called RhoCoCo

A suggestion for very simple bank switching. A single 8 bit latch (on an I/O port), and an 8 to 4 multiplexer driven by Z80 A15. This provides 16x32K pages of memory which can can selected for low or high half of the Z80 address range by writing to the low or high nibble of the latch.
by Memotech Bill
Sun Nov 18, 2018 9:54 am
Forum: Off topic discussion
Topic: My own 8-bit RETRO Homecomputer: RhoCoCo
Replies: 139
Views: 38345

Re: My own Retro homecomputer called RhoCoCo

@mahjongg you may be interested in http://primrosebank.net/computers/mtx/projects/bb80col/bb80col.htm , a Propeller video generator specifically designed to interface with a Z80. Capabilities: "Native Mode": Text: 80x24x64 colours Graphics: 320x240x64 colours (restricted to 2 colours per 8x10 charac...

Go to advanced search