6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sat Nov 23, 2024 11:41 pm

All times are UTC




Post new topic Reply to topic  [ 212 posts ]  Go to page Previous  1 ... 9, 10, 11, 12, 13, 14, 15  Next
Author Message
 Post subject:
PostPosted: Wed May 04, 2011 8:29 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10986
Location: England
It runs OK on CBM BASIC V2 (using this statically recompiled version)


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri May 06, 2011 8:53 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10986
Location: England
I've been trying and failing to get OSI basic to run nicely in emulation. Oddly, I could evaluate expressions but not get any numbered lines to be saved.

So, no confirmation from me, as yet. Sorry.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri May 06, 2011 8:55 pm 
Offline

Joined: Sun Dec 20, 2009 8:48 pm
Posts: 3
micro_brain wrote:
[

Would anyone with an 8k BASIC installation care to try this out?

Code:

 7 DIM CL$(71,24)
 8 FOR Y=0 TO 23:FOR X=0 TO 70
 9 CL$(X,Y)=CHR$(27)+"["+MID$(STR$(Y),2)+";"+MID$(STR$(X),2)+"H"
 10 PRINT ".";:NEXT X:PRINT:NEXT Y



It should print 24 rows of dots on the screen, each 71 chars long.


Some time ago I stumbled across Grant's Micro UK101 schematic too, but instead of building one I decided to do an emulation of it in Java including writing the 6502 core etc. This was quite a while ago now, and other than reviving it briefly to run some of Ed's 6502 test cases (successfully) it hasn't exactly been greatly stressed as a UK101.

Still, I entered your code and it runs fine if I configure the emulator to run with 32KBytes of RAM on start up. However, if I tell the machine that it's an 8K RAM box then I just get to see 13 '.'s followed by an 'ERROR IN 9' message and a return to BASIC.

Code:
Micro UK101 C/W/M?
MEMORY SIZE? 8192
TERMINAL WIDTH? 64

 7423 BYTES FREE

C O M P U K I T  U K 1 0 1

Personal Computer

8K Basic Copyright1979
OK
 7 DIM CL$(71,24) 
 8 FOR Y=0 TO 23:FOR X=0 TO 70 
 9 CL$(X,Y)=CHR$(27)+"["+MID$(STR$(Y),2)+";"+MID$(STR$(X),2)+"H"
 
 10 PRINT ".";:NEXT X:PRINT:NEXT Y 
RUN
.............
?OÍ ERROR IN  9
OK



Not sure that helps very much, but there you are. :?

bye

Rich


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri May 06, 2011 9:00 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10986
Location: England
Rich
I don't suppose you could give it a spin with the OSI "fixed" ROMs as mentioned here could you?

micro_brain actually has a composite, I think, where only ROM3 is from OSI and the other ROMs are compukit.

Ed
(Edit: I notice the fixed ROM is credited to "Ed" - but that's not me!)


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri May 06, 2011 9:57 pm 
Offline

Joined: Sun Dec 20, 2009 8:48 pm
Posts: 3
Ed, all

Just tried with the BASIC3.rom replaced from the basfix02.zip file in your link.

Again, configuring as a 8KByte RAM machine the program fails and shows just 11 '.'s - so that looks like the same number of outer loop iterations that Micro_brain was seeing in hardware. The emulator returns to BASIC ok though:

Code:
8K Basic Copyright1979
OK
 7 DIM CL$(71,24) 
 8 FOR Y=0 TO 23:FOR X=0 TO 70 
 9 CL$(X,Y)=CHR$(27)+"["+MID$(STR$(Y),2)+";"+MID$(STR$(X),2)+"H"
 
 10 PRINT ".";:NEXT X:PRINT:NEXT Y 

RUN
...........
?OÍ ERROR IN  9
OK


Configuring as a 32KByte RAM machine the program runs fine .

Configuring as a 16KByte RAM machine the program gets a long way through but then bombs out to BASIC with the 'ERROR IN 9' message as above.

The 16KByte run goes a lot slower than the 32KByte one. Both 'stutter' printing out lots of '.' and then pausing sporadically before continuing. The 16KByte one pauses a lot more often and eventually fails, so something related to garbage collection looks like a very likely culprit here.

Rich


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri May 06, 2011 10:04 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10986
Location: England
Excellent adventuring!

So, I think we're saying that CBM managed a complete fix, but this (post)OSI fix didn't quite manage it.

I think the pagetable articles and accompanying sources do detail all the fixes, but I haven't studied them, or built all the variations.

Cheers
Ed


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat May 07, 2011 11:11 am 
Offline

Joined: Thu Mar 31, 2011 8:09 pm
Posts: 85
Well, I do wonder how much memory BASIC is allocating for each of the elements of CL$. Considering they only need 7 or 8 bytes each, it's likely that the DIM is a pretty greedy statement.

Being a UK101 of Grant's design, it has 32k of RAM (well, 31999 bytes to be precise). Ed's correct in his assumption that I hacked the OSI fix into the UK101 ROM that Grant supplied. Seems to work better than before, but like I said, it doesn't complete the outer loop.

Clearly all the stuttering is garbage collection going on at odd times.

I'd really love to have a C interpreter or dev environment on here, it'd give me much more control... In the meantime if anyone has an EhBasic ROM for the UK101 that'd be great. I can't quite work out how to get Lee's source working here (see my other thread in EhBASIC forum).


@Ed : Oh by the way, I scored a Beeb off ebay, but it was DOA. Power supply's chopper transformer is dead :( and I paid over the odds for it 'cause the seller said it'd been carefully looked after and worked. However he was very nice and refunded most of the money, so I have here another little project to get up & running. New transistor ordered, but in the meantime I've hooked up a 5v power supply to the board and it seems to be OK. Whey hey! Bargain.... :)


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat May 07, 2011 1:20 pm 
Offline
User avatar

Joined: Fri Dec 12, 2008 10:40 pm
Posts: 1007
Location: Canada
I built one of these a couple of years back. I can pull it out and test the program.

BTW, do not know if you solved your save and load yet, but Hyper Terminal can adjust for line and character delays. Just go into Properties, select the 'Settings' tab and click on the 'ASCII Setup' button. You see the parameters to change there.

_________________
Bill


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat May 07, 2011 2:04 pm 
Offline
User avatar

Joined: Fri Dec 12, 2008 10:40 pm
Posts: 1007
Location: Canada
Okay,

Ran This

Code:
 7 DIM CL$(71,24)
 8 FOR Y=0 TO 23:FOR X=0 TO 70
 9 CL$(X,Y)=CHR$(27)+"["+MID$(STR$(Y),2)+";"+MID$(STR$(X),2)+"H"
 10 PRINT ".";:NEXT X:PRINT:NEXT Y


It stops at the 13th dot of the 12th line with X=13 and Y=11.

_________________
Bill


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat May 07, 2011 6:33 pm 
Offline

Joined: Thu Mar 31, 2011 8:09 pm
Posts: 85
BillO wrote:
I built one of these a couple of years back. I can pull it out and test the program.

BTW, do not know if you solved your save and load yet, but Hyper Terminal can adjust for line and character delays. Just go into Properties, select the 'Settings' tab and click on the 'ASCII Setup' button. You see the parameters to change there.


Hyper Terminal... isn't that for one of those quaint old PCs?

;)


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat May 07, 2011 7:14 pm 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8513
Location: Midwestern USA
micro_brain wrote:
Hyper Terminal... isn't that for one of those quaint old PCs?

Hyper-Term is still around, although seldom used these days. There are far better terminal emulators. We install Futuresoft's Dynacomm on the workstations we build that are to be used with host-based software running on UNIX or Linux.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat May 07, 2011 8:02 pm 
Offline
User avatar

Joined: Fri Dec 12, 2008 10:40 pm
Posts: 1007
Location: Canada
micro_brain wrote:
Hyper Terminal... isn't that for one of those quaint old PCs?
;)


Indeed it is. I still use a PC with XP on it in my lab just because everything is available for it. There are way better TEs than Hyper Terminal, but it has the delay's needed for ASCII operation that these little projects need, it's there and it's plenty sufficient for the job...

_________________
Bill


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun May 08, 2011 7:28 am 
Offline

Joined: Thu Mar 31, 2011 8:09 pm
Posts: 85
Yep, I've a PC running XP for much the same reason. I have just installed XP on my Mac under VMWare and I was very happy to discover that the cheap Chinese EEPROM burner works with it, so I reckon I should be able to ditch all the PC hardware. All my PCs are old, bulky, obsolete, slow and noisy anyway (plus they don't have much memory).


Top
 Profile  
Reply with quote  
 Post subject: IDENTITY CHANGE
PostPosted: Sun May 08, 2011 8:05 am 
Offline

Joined: Thu Mar 31, 2011 8:09 pm
Posts: 85
Guys, I am going to start using a new identity on 6502.org. From now on, I will be using the forum account "jonb" as it seems better than "micro_brain" (dunno why I chose that one..).

Cheers

JonB


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun May 08, 2011 8:07 am 
Offline

Joined: Sun May 08, 2011 7:39 am
Posts: 104
Here I am .. ;)


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 212 posts ]  Go to page Previous  1 ... 9, 10, 11, 12, 13, 14, 15  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 77 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron