English Amiga Board


Go Back   English Amiga Board > Main > Nostalgia & memories

 
 
Thread Tools
Old 01 October 2019, 22:22   #2321
AmigaHope
Registered User
 
Join Date: Sep 2006
Location: New Sandusky
Posts: 335
Quote:
Originally Posted by matburton View Post
OK here's mine Why 8 bits in a byte?

So that makes sense to me for the 8-bit machine era. It looks like they typically had 8 data bus lines. But why have addresses which overlap data-wise on the Amiga when it has a 16-bit data bus? It seems even more strange when you consider that using 8-bit ops on the M68k sometimes need more cycles, and that you can't fetch unaligned words. Were there any computers in that era that bucked the 8-bit trend?

Looking at the KS1.3 EXEC library it seems that most pointers are BPTRs, which point to a word. Does that mean that it wasn't clear whether an address per 8-bits was going to be a thing until late in development?
Not all systems used 8 bits per address. There were numerous minicomputer CPUs from the 1960's to the 1980's that had different-sized "bytes", but none of them were used in personal computers. Once the industry standardized 8 bits as the smallest addressable chunk of data, it pretty much stuck, since if you manufactured RAM to a different standard it wouldn't sell very well.

Now internally, systems benefited from working on word-aligned boundaries, since the ALUs were processing 16-bit or 32-bit words. If 90%+ of your calculations were done on this word size, then why waste silicon on 8-bit operations? Just make them special-case scenarios that run with microcode. 8-bit instructions were kept, however, since so much of the paradigm of how data was managed (you know, little things like ASCII) still operated on 8 bits. Moreover there was still incentive to do this as memory was expensive.

Even today text is still normally stored as UTF-8, not UTF-32.
AmigaHope is offline  
Old 01 October 2019, 22:53   #2322
demolition
Unregistered User
demolition's Avatar
 
Join Date: Sep 2012
Location: Copenhagen / DK
Age: 39
Posts: 3,976
Quote:
Originally Posted by matburton View Post
OK here's mine Why 8 bits in a byte?
Yeah, I know it is boring to just post a link to wikipedia, but the first paragraph explains it very well:
https://en.wikipedia.org/wiki/Byte

In essence; a byte was not always 8 bits. It started out as grouping bits together so they could hold text. That was doable with 6 bits, including punctuation and various control codes, but it eventually settled at 8 bits per group as it was a good compromise and fit well into a binary world. A word on the other hand, can be anything and depends largely on the architecture. 16 bit words are common today, but they could just as well be 8 bits or 40 bits.

Quote:
Originally Posted by AmigaHope View Post
Not all systems used 8 bits per address. There were numerous minicomputer CPUs from the 1960's to the 1980's that had different-sized "bytes", but none of them were used in personal computers. Once the industry standardized 8 bits as the smallest addressable chunk of data, it pretty much stuck, since if you manufactured RAM to a different standard it wouldn't sell very well.
Well, 9 bit memory was also quite common but that was used for parity.
demolition is offline  
Old 02 October 2019, 11:11   #2323
idrougge
Registered User
 
Join Date: Sep 2007
Location: Stockholm
Posts: 3,928
Quote:
Originally Posted by AmigaHope View Post
Not all systems used 8 bits per address. There were numerous minicomputer CPUs from the 1960's to the 1980's that had different-sized "bytes", but none of them were used in personal computers. Once the industry standardized 8 bits as the smallest addressable chunk of data, it pretty much stuck, since if you manufactured RAM to a different standard it wouldn't sell very well.
In the Amiga era (and before that), RAM chips was between 1 and 4 bits wide, so there was nothing RAM-wise stopping you from building a 7-bit, 14-bit or 12-bit computer.

Regarding DOS and BPTR, the BCPL language (which DOS was written in) was conceived in an age when computers mainly addressed words, only using "bytes" (which may have been 6, 7 or 8 bits wide) for text, and then often only using special instructions.
idrougge is offline  
Old 02 October 2019, 15:54   #2324
Locutus
Registered User

 
Join Date: Jul 2014
Location: Finland
Posts: 969
There were a handful of non 8bit byte microprocessors, there's a hobby project for the Intersil 6120 pdp8-on-a-chip.

https://www.retrobrewcomputers.org/d...-edition:start

Amusingly, for memory they use double 8bit wide SRAM and ROM's and just dont use some of the data bits.
Locutus is offline  
Old 02 October 2019, 22:40   #2325
jolly11
Registered User
 
Join Date: Oct 2007
Location: Mars
Posts: 159
a rat decided to sh*t on my mouse and on my amiga 600 (the keyboard is covered with plastic case)..so, what's the best thing to use to clean & disinfect the mouse and the miggy without damaging it?
jolly11 is offline  
Old 02 October 2019, 23:23   #2326
demolition
Unregistered User
demolition's Avatar
 
Join Date: Sep 2012
Location: Copenhagen / DK
Age: 39
Posts: 3,976
Quote:
Originally Posted by jolly11 View Post
a rat decided to sh*t on my mouse and on my amiga 600 (the keyboard is covered with plastic case)..so, what's the best thing to use to clean & disinfect the mouse and the miggy without damaging it?
Take them apart and clean the parts with soap and water. I assume it is only on the plastic parts. If it has been there a while then it may have become discolored due to the acid but then you can take it from there.
demolition is offline  
Old 03 October 2019, 14:09   #2327
Nightshft
Registered User

Nightshft's Avatar
 
Join Date: Mar 2018
Location: Austria
Age: 44
Posts: 246
Why do so many programs set their assigns in the startup-sequence?

When it can easily be set in a startup script. Ok, for DPaint and the like it may make sense, but for the rest it would save ram and make the st-seq less cluttered.
Nightshft is offline  
Old 03 October 2019, 14:14   #2328
Jope
-
Jope's Avatar
 
Join Date: Jul 2003
Location: Helsinki / Finland
Age: 39
Posts: 7,449
Quote:
Originally Posted by Nightshft View Post
Why do so many programs set their assigns in the startup-sequence?

When it can easily be set in a startup script. Ok, for DPaint and the like it may make sense, but for the rest it would save ram and make the st-seq less cluttered.
We have CLI launched programs and WB launched programs.. The OS didn't provide a way of WB launching anything from a CLI until quite recently. Also having extra console windows open up for WB programs is not very elegant.

Think for example project icons with a default tool, you want the assigns to be in place before it starts.

So this is just a convenient place for those assigns, they're ready to go when you launch that program. Running a full WB with low RAM is not very often used in any case, unless it is a floppy only system.
Jope is offline  
Old 03 October 2019, 14:37   #2329
Daedalus
Registered User

Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 4,352
Quote:
Originally Posted by Nightshft View Post
Ok, for DPaint and the like it may make sense, but for the rest it would save ram and make the st-seq less cluttered.
And there's part of the issue too - why is it ok for DPaint, but not for other applications which you've also chosen to install? The developers would be safe to assume that you're installing the software because you want to use it, I would have thought.

As for memory, having an assign available takes a very small amount of RAM - if you're struggling for a couple of kB, you're struggling anyway. If it's an issue with lots of assigns clogging up your file requesters, you can always add the DEFER keyword to their entries - that way they're not activated until something explicitly accesses them.

You could of course make a very simple script to do the assigns yourself - I do that for some software that I rarely use, like the Dice compiler, so I can activate it on the rare occasion I need it, without having to fumble through the setup and create them manually.

Later versions of the OS will also let you create a required assign from the "Please insert volume" requester, and patches are available that will add similar capabilities to the older versions of the OS.

On the flip side, assigns don't need to be created using the Assign command in a script - the OS API has the facilities required to create, modify and remove an assign from within a program, so it's entirely possible for a program to create any assign it needs at runtime and remove it afterwards. Amiblitz 3 does just this, and it works well provided you don't want convenient access to the program's drawer when the program isn't running. I've found however that I like to have the Blitz3: assign available so I can easily access my files even when AmiBlitz isn't running, so I added the assign manually to the user-startup myself.
Daedalus is offline  
Old 03 October 2019, 16:08   #2330
daxb
Registered User
 
Join Date: Oct 2009
Location: Germany
Posts: 2,392
I think you mean user-startup instead of startup-sequence because assigns are usually installed to user-startup. On the other hand programs shouldn't need an assign to work. PROGDIR: is supported for at least 25 years and a developer can use it. Of course that doesn't help with old (dead) programs. But there exists Assign-Manager to deal with it if too much assigns fly around. Like already mentioned you can write your own startup script that sets the needed assign.
daxb is offline  
Old 03 October 2019, 16:27   #2331
idrougge
Registered User
 
Join Date: Sep 2007
Location: Stockholm
Posts: 3,928
Daxb says it. Modern (as in past 1993 or so), well-behaved programs should use PROGDIR: instead.
idrougge is offline  
Old 03 October 2019, 16:37   #2332
ross
Per aspera ad astra

ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 49
Posts: 2,241
Actually there is no need for PROGDIR: at all, neither from WB nor from CLI.
Making completely portable programs on Amiga is really simple.

For old programs, yes, you actually need to create patches..
ross is offline  
Old 03 October 2019, 18:45   #2333
daxb
Registered User
 
Join Date: Oct 2009
Location: Germany
Posts: 2,392
Quote:
Originally Posted by ross View Post
Making completely portable programs on Amiga is really simple.
Do you know why some developer chose the need for an assign for the program to run? IMO MUI is an ugly example or DOpus 4/5, AmiTCP, Photogenics, ArtEffect, PPaint, ghostscript, AsmPro, GoldED, FrexxED, MUIbase, Protext, Miami, AWeb, AmiSSL, TurboPrint, aso. Then there are games.
daxb is offline  
Old 03 October 2019, 19:13   #2334
ross
Per aspera ad astra

ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 49
Posts: 2,241
Quote:
Originally Posted by daxb View Post
Do you know why some developer chose the need for an assign for the program to run? IMO MUI is an ugly example or DOpus 4/5, AmiTCP, Photogenics, ArtEffect, PPaint, ghostscript, AsmPro, GoldED, FrexxED, MUIbase, Protext, Miami, AWeb, AmiSSL, TurboPrint, aso. Then there are games.
For large programs, which may have data shared with others, or where you want to have specific partitions, I think it is very useful to use Assign.

The same can be true for games where the disk name identifies where to load the data, so that by doing an Assign you find them even if they are in an HDD directory.

You can also change data path on the fly with a new Assign.
Or add locations to search for data by simply adding a path.

There are much situations where Assign command is useful, I like it very much .
ross is offline  
Old 04 October 2019, 20:47   #2335
Anubis
Maj. Voodoo

Anubis's Avatar
 
Join Date: Jan 2005
Location: Raking Woods...
Age: 47
Posts: 2,849
I really love Assign in Amiga and always have been using it. It allowed to store/recall data/programs in much simpler way without having to type long paths and / or memorize them.

Also allowed me to use ls, mem, cp, mv, exit,.. or call frequently used operations such as edus - ed s:user-startup, edss - eds s:startup-sequence... etc. in Amiga Shell.
Anubis is offline  
Old 04 October 2019, 21:01   #2336
daxb
Registered User
 
Join Date: Oct 2009
Location: Germany
Posts: 2,392
Maybe you mean Alias instead of Assign? At least referring to your second paragraph.
daxb is offline  
Old 05 October 2019, 03:30   #2337
NorthWay
Registered User
 
Join Date: May 2013
Location: Grimstad / Norway
Posts: 614
I believe assigns/devices were borrowed from VMS.
Too bad there was not a few standard devices like IN: and OUT: and ERR: to reflect on what unix and C did.
NorthWay is offline  
Old 07 October 2019, 16:47   #2338
Glen M
Registered User

 
Join Date: May 2017
Location: Belfast
Posts: 520
I've got another one that just came to me at the weekend when playing with my A1200.

Why is there a blank key on the keyboard beside return?
Glen M is offline  
Old 07 October 2019, 17:06   #2339
Gorf
Registered User

 
Join Date: May 2017
Location: Munich/Bavaria
Posts: 869
Quote:
Originally Posted by Glen M View Post
I've got another one that just came to me at the weekend when playing with my A1200.

Why is there a blank key on the keyboard beside return?
That is a good question ... it is used in the German layout for "#"

In the English layout there seems to be an other blank key next to the left shift-key...
That is used as "< >" in the German layout.

I wonder why they did not use these dead keys for e.g. curly brackets in the english layout.


(the Amiga 1000 has a different shape for the return-key and a wider left shift-key, making these dead key obsolete.)
Gorf is offline  
Old 07 October 2019, 17:30   #2340
Daedalus
Registered User

Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 4,352
Quote:
Originally Posted by Glen M View Post
I've got another one that just came to me at the weekend when playing with my A1200.

Why is there a blank key on the keyboard beside return?
There's another down beside Z It's basically so that the same keyboard chassis can accommodate different layouts by simply fitting different keycaps. A cost-saving exercise by Commodore.
Daedalus is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Gamebase Amiga - 2 Questions Fiery Phoenix New to Emulation or Amiga scene 8 13 August 2012 13:31
Amiga CD32 questions pubzombie New to Emulation or Amiga scene 26 24 January 2010 17:27
A few general Amiga questions. Hougham support.Hardware 6 30 April 2008 23:13
Amiga A4000 Questions mfletcher support.Hardware 8 29 April 2008 11:51
Amiga 600 Questions JDunlap support.Hardware 14 20 January 2008 20:13

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 01:48.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.
Page generated in 0.15682 seconds with 15 queries