I have to be honest…I almost posted this yesterday, about an hour after I posted about the fishbowl discussion. But, I decided to bite my tongue and think through everything that was flying through my head.
Not many things increase my blood pressure, but when I read this article from the Boston Globe website, I probably should have taken an aspirin to lower it a little bit (it isn’t long…I suggest you take a look at it).
Essentially, the Rhode Island legislature is reviewing a bill that would “prohibit students from using cellphones during the school day.”
Seriously?
We need to stop making cellphones the scapegoat and start engaging students when they’re in the classroom!
The problem isn’t the phone, which is what the legislators and teachers are focusing on. The problem is that teachers aren’t challenging students with relevant, meaningful instruction and students are bored with school.
The article concludes with the following:
“They can live without distractions for a few hours every day,” she said. “We grew up without them.”
If this is the prevailing attitude, we’re never going to reach a reform in education. As teachers, it is our job to convince parents, administrators, colleagues, and even the government that we don’t need more oversight…we need more freedom of technology use. Students today are growing up in the 21st century…and like it or not, that includes cell phones, smart phones, ipods/pads, and a thousand other tools. Instead of fearing the change, we should push the change and teach these kids how to effectively use the power of information availability.
Don’t jam 21st century learners into a 20th century learning model because that’s what “we” had to do. Let’s continue to dialogue and set the example so we can push education forward, and not backward.
Written on April 22nd , 2011 by Brian Bennett Categorized in: All Technology
Leave a comment


…How about I build something that buys me things completely at random? Something that just… fills my life with crap? How would these purchases make me feel?
Uses PhantomJS – a virtual, scriptable web browser – to crawl Amazon and deliver random surprise purchases.
Results were catalogued on the project's Tumblr.
The Random Darknet Shopper is an automated online shopping bot which we provide with a budget of $100 in Bitcoins per week. Once a week the bot goes on shopping spree in the deep web where it randomly choses and purchases one item and has it mailed to us.
A darknet is a private network where connections are made only between trusted peers — sometimes called "friends" — using non-standard protocols and ports. Darknets are distinct from other distributed peer-to-peer networks as sharing is anonymous.
(You can use<EMAIL_ADDRESS>to reuse your email address)
examples/day-3/01-twitter-favorites
examples/day-3/02-twitter-stream
examples/day-3/03-twitter-tweet
examples/day-3/04-twitter-upload
examples/day-3/05-twitter-processing
Create a project that creatively utilises one or more of Twitter's APIs. This could be a Twitter bot, image generator/processor, visualisation, physical manifestation or anything else that comes to mind.


BitShares-Core
6.1.0
BitShares blockchain implementation and command-line interface software
- o -
obj :
fc::ssl_wrapper< ssl_type >
offer_id :
graphene::chain::credit_deal_object
,
graphene::chain::credit_deal_summary_object
,
graphene::protocol::credit_deal_expired_operation
,
graphene::protocol::credit_offer_accept_operation
,
graphene::protocol::credit_offer_delete_operation
,
graphene::protocol::credit_offer_update_operation
offer_owner :
graphene::chain::credit_deal_object
,
graphene::chain::credit_deal_summary_object
,
graphene::protocol::credit_deal_expired_operation
offset :
fc::detail::rate_limited_operation
ofs :
fc::ofstream::impl
old_index_next_ids :
graphene::db::undo_state
old_object :
graphene::chain::custom_authority_delete_evaluator
,
graphene::chain::custom_authority_update_evaluator
old_values :
graphene::db::undo_state
on_pending_transaction :
graphene::chain::database
one_byte_mask :
graphene::db::object_id_type
one_time_key :
graphene::protocol::stealth_confirmation
,
graphene::wallet::blind_balance
op :
graphene::chain::operation_history_object
,
graphene::elasticsearch::operation_history_struct
,
graphene::market_history::liquidity_pool_history_object
,
graphene::market_history::order_history_object
,
graphene::protocol::op_wrapper
,
graphene::wallet::operation_detail
,
graphene::wallet::operation_detail_ex
op_in_trx :
graphene::chain::operation_history_object
,
graphene::elasticsearch::operation_history_struct
op_object :
graphene::elasticsearch::operation_history_struct
op_type :
graphene::market_history::liquidity_pool_history_object
open :
graphene::market_history::bucket_key
open_base :
graphene::market_history::bucket_object
open_quote :
graphene::market_history::bucket_object
openssl_mutexes :
fc::openssl_thread_config
operation_history :
graphene::elasticsearch::bulk_struct
operation_history_objs :
graphene::app::history_api::history_operation_detail
operation_id :
graphene::chain::account_history_object
operation_id_num :
graphene::elasticsearch::bulk_struct
operation_result :
graphene::elasticsearch::operation_history_struct
operation_result_object :
graphene::elasticsearch::operation_history_struct
operation_results :
graphene::chain::transaction_evaluation_state
,
graphene::protocol::processed_transaction
operation_type :
graphene::chain::custom_authority_object
,
graphene::elasticsearch::bulk_struct
,
graphene::protocol::custom_authority_create_operation
operations :
graphene::protocol::transaction
optimal_parameters :
fc::bloom_parameters
options :
graphene::chain::account_object
,
graphene::chain::asset_bitasset_data_object
,
graphene::chain::asset_object
,
graphene::protocol::account_create_operation
order :
graphene::protocol::limit_order_cancel_operation
order_id :
graphene::elasticsearch::fill_struct
,
graphene::protocol::fill_order_operation
original_htlc_recipient :
graphene::protocol::htlc_refund_operation
originating_peer :
graphene::net::message_propagation_data
other :
graphene::protocol::operation_get_required_auth
our_state :
graphene::net::peer_connection
out :
fc::file_appender::impl
outbound_port :
graphene::net::hello_message
,
graphene::net::peer_connection
outputs :
graphene::protocol::blind_transfer_operation
,
graphene::protocol::transfer_to_blind_operation
,
graphene::wallet::blind_confirmation
owner :
graphene::chain::account_balance_object
,
graphene::chain::account_object
,
graphene::chain::account_statistics_object
,
graphene::chain::balance_object
,
graphene::chain::blinded_balance_object
,
graphene::chain::force_settlement_object
,
graphene::chain::genesis_state_type::initial_asset_type::initial_collateral_position
,
graphene::chain::genesis_state_type::initial_balance_type
,
graphene::chain::genesis_state_type::initial_vesting_balance_type
,
graphene::chain::vesting_balance_object
,
graphene::protocol::account_create_operation
,
graphene::protocol::account_update_operation
,
graphene::protocol::blind_input
,
graphene::protocol::blind_output
,
graphene::protocol::operation_get_required_auth
,
graphene::protocol::vesting_balance_create_operation
,
graphene::protocol::vesting_balance_withdraw_operation
,
graphene::protocol::worker_create_operation
owner_account :
graphene::chain::credit_offer_object
,
graphene::chain::samet_fund_object
,
graphene::protocol::credit_offer_create_operation
,
graphene::protocol::credit_offer_delete_operation
,
graphene::protocol::credit_offer_update_operation
,
graphene::protocol::samet_fund_create_operation
,
graphene::protocol::samet_fund_delete_operation
,
graphene::protocol::samet_fund_update_operation
owner_approvals_to_add :
graphene::protocol::proposal_update_operation
,
graphene::wallet::approval_delta
owner_approvals_to_remove :
graphene::protocol::proposal_update_operation
,
graphene::wallet::approval_delta
owner_id :
graphene::app::order
owner_key :
graphene::chain::genesis_state_type::initial_account_type
owner_name :
graphene::app::order
,
graphene::chain::genesis_state_type::initial_committee_member_type
,
graphene::chain::genesis_state_type::initial_witness_type
,
graphene::chain::genesis_state_type::initial_worker_type
owner_special_authority :
graphene::chain::account_object
,
graphene::protocol::account_create_operation::ext
,
graphene::protocol::account_update_operation::ext
Generated on Thu Dec 1 2022 10:13:48 for BitShares-Core by
1.8.13


[§143-2.6] Animal desertion. It shall be unlawful for the owner of any animal or any person in possession of an animal that belongs to another person to leave the animal without the intention of returning to it.
Any person who violates this section shall be guilty of a petty misdemeanor. [L 1992, c 223, §1]


All quotes, unless otherwise attributed to another author, are copyright Sandeep Nanda
You may use them in your works in any manner as long as correct attribution to the author is given. An attribution link to http://sandeepnanda.com is optional, but greatly appreciated.


Please enter your phone
Please enter the verification code we sent by SMS
Scan this QR With Guardian app
Scan this QR With Google Authenticator
Enter a code to confirm enrollment
Enter a code to login
Recovery
Sending push notification...
We have sent a push notification to your phone
Sending sms...
Enter a the code we sent by SMS. Retry
Enter recovery code to login


index
|
up
|
prev
|
next
CommonConstraintNode Class
Definition at line
397
of
Concept.hpp
Constructors
CommonConstraintNode
()
CommonConstraintNode
(
const
Span
& span_)
Member Functions
void
Accept
(
Visitor
& visitor)
override
Node
*
Clone
(
CloneContext
& cloneContext)
const override
Constructor Details
CommonConstraintNode Constructor
cmajor::ast::CommonConstraintNode::CommonConstraintNode()
Definition at line
982
of
Concept.cpp
:
982
:
IntrinsicConstraintNode
(
NodeType
::
commonConstraintNode
)
983
{
984
}
Declaration at line
400
of
Concept.hpp
CommonConstraintNode Constructor
cmajor::ast::CommonConstraintNode::CommonConstraintNode(
const
Span
& span_)
Definition at line
986
of
Concept.cpp
:
986
:
IntrinsicConstraintNode
(
NodeType
::
commonConstraintNode
)
987
{
988
}
Declaration at line
401
of
Concept.hpp
Member Function Details
Accept Member Function
void
cmajor::ast::CommonConstraintNode::Accept(
Visitor
& visitor)
override
Definition at line
990
of
Concept.cpp
:
991
{
992
visitor
.
Visit
(
*
this
)
;
993
}
Declaration at line
402
of
Concept.hpp
Base class overridden functions:
cmajor::ast::Node::Accept
Calls:
cmajor::ast::Visitor::Visit
Clone Member Function
Node
* cmajor::ast::CommonConstraintNode::Clone(
CloneContext
& cloneContext)
const override
Definition at line
995
of
Concept.cpp
:
996
{
997
return
new
CommonConstraintNode
(
)
;
998
}
Declaration at line
403
of
Concept.hpp
Base class overridden functions:
cmajor::ast::Node::Clone
index
|
up
|
prev
|
next


{% extends 'admin/master.html' %} {% block body %} {{ super() }}
This is an education purpose project`s admin panel.
You can create, update or delete products, using its interface, upload images.


Greetings! I am a Masters candidate in the Department of Computer Science and Engineer at Santa Clara University, California, USA. I am currently enrolled in Design and Analysis of Alogrithms and computer architecture courses.
Been working as a senior software engineer in India, I have invested considerable time solving some of most challenging migration solution problems at eQtechnologic for some high-profile clients such as RR, GE, BAE Submarines, US Air.


You've stumbled upon the about page. This website was made to personalise the user's reading experience in a different way than usual.


FLATLINERS A review in the public domain by The Phantom<EMAIL_ADDRESS>It's been a long, tedious, and violence-prone summer for the Phantom, and he's been getting a little edgy. Reviewing's in his blood now, and it's been nearly three months since his last reviews (for CLASS OF 1999 and BRAIN DEAD).
Since then, he's been subjected to more violence thinly disguised as pop entertainment than even Steven King, in his wildest dreams, possibly could have imagined. The combined body counts of TOTAL RECALL, ROBOCOP 2, DIE HARD 2, and PRESUMED INNOCENT (well, to be fair, PRESUMED INNOCENT's body count *was* on the low side) exceeded even the Phantom's threshold for violence sometime in mid-July; for him, the cold, dark days of autumn and winter, and the dozens of horror films they'll bring, will seem like welcome relief indeed.
Which brings us, in a rather roundabout way, to the subject of this review. For a film that is ostensibly about dying, it's curious that no one dies in FLATLINERS -- at least not for long. Although the film is as much of a horror film as was THE OMEN and THE EXORCIST, FLATLINERS ties PRESUMED INNOCENT as the summer's film with the lowest body count.
(Before the Phantom even gets started reviewing the film, he would like to say that he finds this both remarkable and quite refreshing; it wasn't too long ago that filmmakers knew how to make films, both horror and legitimate, in ways that didn't involve killing more people on screen than they disappointed in the auditorium.)
FLATLINERS starts with the tired old notion of "near death" experiences, takes a detour somewhere around ELM STREET, and winds up as a visual homage to one of the most stylish horror films of all time: THE HUNGER. Along the way, the director, Joel Schumacher, reminds us of just what made 1987's THE LOST BOYS so enjoyable, and why he is one of the best and most stylish directors making B-grade movies today.
The film itself is best described as a rollercoaster ride -- a lot of fun while you're speeding around turns and checking your seat restraints, but not very memorable afterward. To its credit, the film makes believable the shaky notion that a bunch of photogenic medical students with no homework, labwork, and just the occasional round to make, can repeatedly induce brain death in each other for periods of time greater even than the length of the commercials preceding the film, and then unfailingly resuscitate each other, bringing each other back to life and suffering no more brain damage than has the script.
Having established that, which is no mean feat, Schumacher uses the near death experiences to fashion a film that blends the best of the ELM STREET series with the sensibility of a 90-minute MTV longform video. Yet regardless of what you think of the subject matter, or even of the film itself, there is no denying that Schumacher's cinematography, his ability to set a scene and generate suspense, and his ability to use sound effects and lighting techniques effectively is virtually unequaled in the world of the horror film. Sam Raimi and the Coen brothers have shown the same skill with the EVIL DEAD series, BLOOD SIMPLE and RAISING ARIZONA, and of course Ridley Scott's films define the genre of techno-style, but Schumacher's talents have improved in the years since THE LOST BOYS, and at this point the Phantom has to rank him right up there with Sam, Joel, and Ethan.
Schumacher keeps the film moving along, and it's good that he does, since otherwise the audience would have time to consider just how trite and obvious the plot is. The Phantom is not going to drop any spoilers, but if there is a single phan out there who can't guess both where the film is going and how it ends by the time Kevin Bacon goes under, the Phantom will be most surprised. THE LOST BOYS suffered from similar problems, of course; as modern-day vampire stories go, it doesn't hold a silver bullet to NEAR DARK. But at least THE LOST BOYS had interesting characters, generally witty dialogue, and a script that doesn't sound as if the closest it ever came to a second draft was when the writer left some of the windows in his apartment open. To say that the characters in FLATLINERS are two-dimensional would be to insult the Cartesian coordinate system; they each have one dimension, and they each stick to that dimension throughout the film. Kiefer Sutherland is the driven, slightly bad guy; Kevin Bacon is the brilliant, unstable yet reliable guy, Julia Roberts keeps us all waiting for the scene where they perform CPR on her and in general never allows the word "collagen" to leave our thoughts, etc., etc.
But we don't go to horror films expecting great originality, do we phans? Although the occasional diamond in the rough like the EVIL DEAD series or last spring's BRAIN DEAD helps us recall that it is possible to be both creative and stylish, all too frequently we are forced to settle for films that are neither. That FLATLINERS is so very stylish is a distinct plus, and Schumacher handles the film so well that the Phantom was more than willing to overlook the bumpy plot and the less than surprising surprises.
The film is set in Chicago, but only barely. As he did with THE LOST BOYS, Schumacher has used various unrelated sets and city backdrops in a way that creates a private world for the film; FLATLINERS is not set in any recognizable part or suburb of Chicago, though alumni of Loyola may recognize some of the more striking buildings in the film. But for the most part, the characters in FLATLINERS exist in their own world, a world of colored lights, fog, and the night (it's almost always night during the film, and when it isn't night it's dark or cloudy). Phans of THE LOST BOYS will recognize some of Schumacher's signature elements of style, but FLATLINERS has many of its own; it is obviously related to THE LOST BOYS, but it doesn't look like a clone. One interesting new affectation is having large sheets of clear plastic draped over almost everything in sight; this was done to such excess that the Phantom thought that all of Chicago was undergoing massive asbestos removal procedures. And Schumacher's swooping and diving camera is back, but his technique has improved in the years since THE LOST BOYS. In FLATLINERS, he makes use of all the tricks of the music video trade, including black & white photography, purposely grainy or flat photography, washed out or oversaturated color, etc. There are also a good number of monitors of various kinds scattered throughout the film, and Schumacher even cribs a bit from SEX, LIES AND VIDEOTAPE. For better or worse (and the in the Phantom's opinion, better), FLATLINERS plays more like a longform video than like a film.
By the film's end, the Phantom was reminded of Tony Scott's 1983 film, THE HUNGER, a vampire film that was exquisitely bad, though very, very stylish. Schumacher is not a talentless hack like Scott; FLATLINERS is nothing if not entertaining. Whereas THE HUNGER was a feast for the eyes and a famine for the mind, FLATLINERS keeps us entertained and happy as long as we don't spend too much time trying to predict the outcome of the next scene (or even what the next scene will be) -- for alas, all too often we are correct and left to wonder why someone didn't put as much effort into the story as Schumacher had obviously put into filming it.
And it's at the end, when things start winding down and heading toward their all-too-predictable conclusion, that the Phantom found his interest in the film flatlining (or at least faultering). FLATLINERS is a good 10 minutes too long, and the ending is so disappointing that it stands a good chance of ruining what is otherwise a very entertaining, if brainless, film for those phans who expected to see a horror film that had the courage of its convictions.
The ending, phans, is an ending only a studio executive or a parent could love; it is a near-perfect mass-market movie-of-the-week ending. The Phantom even felt that it gave THE ABYSS a run for its money as the world's most abysmal ending, but in the end his conclusion is that THE ABYSS is still reigning champion. Things start going astray once it becomes obvious that the film has a GHOST-like heart to it; all the malevolence, chills and thrills of the first half start to disappear like a vampire exposed to daylight, and the audience is left with 20 minutes of pointless exposition that leads inexorably to a conclusion worthy only of our strongest excoriation. (All right, perhaps that was reaching a bit, but the Phantom hasn't visited his old friend Roget in quite a while.) In a word, phans, the ending is execrable. (Now *that* was reaching...)
But don't let the lousy ending keep you from seeing FLATLINERS; after all, if the Phantom avoided every film that ended badly, he'd be able to get his library books back on time and he'd rarely have to clean the heads on his VCR. Like THE LOST BOYS, FLATLINERS is wonderful fun while you're in the theater, and though you will most likely be groaning along with the rest of the audience by the film's end, you won't be bored for the 90 minutes preceding it.
: The Phantom<EMAIL_ADDRESS>: {cmcl2,uunet}!esquire!baumgart
.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


We are an award-winning startup. Our team has an extensive experience in enterprise IoT projects. Before working on Bolt platform, we have been strategic IoT consultants to various Fortune 500 comapnies.
Build better technology platforms for better communication
To build a Platform to make IoT development quick, easy, and low cost for developers. This will help in better connectivity between humans and machines helping us all in getting the most out of machines.
INDO-US STARTUP-KONNECT PROGRAM
SILICON VALLEY
DST-LOCKHEED MARTIN INDIA INNOVATION
GROWTH PROGRAM
POWER OF IDEAS
CHIEF MINISTER AWARD FOR BEST START-UP IN
GOA
Inventrom Private Limited, Unit no. B32-A, B-wing, 2nd Floor, Raj Industrial Complex, Military Road, Marol, Andheri East, Mumbai, Maharashtra-400059
Inventrom Private Limited, 10, Gaspar Apartment, behind Suzuki showroom, Panjim, Goa-403001, Near People's High School
79, 11th Cross Rd, Binnamangala Indiranagar, Bengaluru, Karnataka 560038
India
(+91)8881197198
contactus@boltiot.com


In the present age, most of the individuals have been using the latest smartphones. We all know that there are two types of operating systems available iOS and Android. The Android users get more accessibility and control over their phone as compared to the iOS users. However, there are still many applications that you cannot install on your Android device as well. In order to resolve this issue, the Tweakbox has been introduced in the market.
Here are some of the amazing features that you will find in the Tweakbox.
There are millions of applications on Tweakbox. In addition, even that is not even available in the AppStore.
The application is very quick to install. As well as you will fall in love with the application.
 Downloading different applications.
There is no special coding. No technical knowledge required. To learn how to use the application.
For Tweakbox there is no need. To have an internet connection.
It works with 5 different download options. In addition, you will surely find something for yourself in app.
If you do not like using application. It is very easy to delete as well. Tweakbox is the latest recently introduced app installer in the market that will allow you to use your phone the way you like. There is no need to jailbreak your phone or use other services when you can directly install your favorite apps on your phone. App will change the way you have been using your phone.
{% for post in site.posts %}


Before Change
"""
with bayeslite.bayesdb_open(builtin_metamodels=False) as bdb:
cc = crosscat.LocalEngine.LocalEngine(seed=0)
ccme = CrosscatMetamodel(cc)
bayeslite.bayesdb_register_metamodel(bdb, ccme)
bayeslite.bayesdb_read_csv(bdb,"dummy", dummy_data,
header=True,create=True)
After Change
"""
with bayeslite.bayesdb_open(builtin_metamodels=False) as bdb:
metamodel = CGPM_Metamodel(cgpm_registry={}, multiprocess=True)
bayeslite.bayesdb_register_metamodel(bdb, metamodel)
bayeslite.bayesdb_read_csv(bdb,"dummy", dummy_data,
header=True,create=True)


In elliptic geometry the mapping shrinks output pixels.
Many output image pixels go to the same input image pixel.
With simple nearest neighbor sampling they all get the same color.
The output image has big pixel blocks.
Bi-linear interpolation gives much better results. Blocks disappear.
Linear artefacts appear at maxima and minima of luminosity.
Bi-cubic interpolation eliminates these linear artefacts. Mitchell-Netravali with a separable kernel is fast. Only the hard mirror lines make some "artificial" lines. Uses 16 input image pixels for one output image pixel. Expensive.
Use the combined Lyapunov coefficient of all three transformations:
- If much larger than 1 use averaging.
- Near 1 use nearest neighbor lookup.
- If much smaller than 1 use bi-linear interpolation.
- If very small use bi-cubic interpolation.


LOADING THE PLAYGROUND ...
Lab • Aroma of the Songs
About
Project Home
Choose
No file selected
Pick your favourite color →
Rotation speed slider →
[?]
Rotation speed slider
Shrink rate slider →
[?]
Shrink rate slider
Stroke weight slider →
[?]
Stroke weight slider
RA
[?]
Rotation Type A
:
X
Y
Z
RB
[?]
Rotation Type B
:
X
Y
Z
View all generated viz.


Max number of queueables
Whether or not the queue has been halted
Max number of queueables
Whether or not a queuable list is processing
Holds the list of queue handlers
Add a listener to a particular channel
The name of the channel
The listener to fire on emission
The context for the the listener
Returns a list of all channel names
Broadcast to a listeners for a particular channel
The name of the channel
List of arguments to be supplied to the listeners
Get the max number of listeners
Halt the queue in place
Get a list of the event bus handlers for a particular channel
The name of the channel
Returns the number listeners subscribed to a channel
The name of the channel
Get a list of the listener references for a particular channel
The name of the channel
Get and clear the current queue list
Remove a listener from a channel
The name of the channel
The listener for the channel
Add a listener to a particular channel that will only fire once
The name of the channel
The listener to fire on emission
The context for the listener
Prepend a listener to a particular channel
The name of the channel
The listener to fire on emission
The context for the listener
Prepend a listener to a particular channel that only fire once
The name of the channel
The listener to fire on emission
Process the current queue
Push a queueable handler into the queue list
If a channel is supplied, all event listeners for that channel will be removed. However, if no channel is supplied, all channels for this event bus will be removed
The name of the channle
Remove a listener from a channel
The name of the channel
The listener for the channel
Resume the queue from where it was halted
Set the max number of queueable handlers
Set the max number of listeners to be applied to a particular event channel
The number of listeners
Generated using TypeDoc
Creates an instance of Queue


Mermaid Prince
menu
About/Contact
Illustration
Video
Interactive
Extras
About/Contact
Illustration
Video
Interactive
Extras
dive /
rise


I . K . W . Y . W
Click right here to select the image you want to retrieve
Click me to retrieve your uploaded image in 3 seconds
{% if query_path %}
{% if ap %}
AP: {{ ap[0] }} / MAP: {{ map }}
{% endif %}
{% endif %}
{% for score in scores %}
{{ score[0] }}
{% endfor %}


This will be the particle's colour in Basic render mode as well as the element button's. It has a format similar to CSS colours: `0xRRGGBB` where every letter specifies which colour the byte specifies, so 0xFF0000 would have exactly 255/255 tones red, and 0 tones both green and blue.
You can set it in C++ by using the PIXPACK preprocessor macro:
Colour = PIXPACK(0x333333);
...and in Lua by using elements.property with the same hexadecimal value.


The Usual Suspects Chad'z rating: **1/2 (out of 4 = OK) 1995, R, 108 minutes [1 hour, 48 minutes] [mystery/crime] starring: Kevin Spacey (Verbal), Gabriel Byrne (Keaton), Stephen Baldwin (McManus), Chazz Palmintari (Customs Special Agent Dave Kujon), produced by Bryan Singer, Michael McDonnell, written by Christopher McQuarrie, directed by Bryan Singer.
If O. Henry was alive today, "The Usual Suspects" might be the type of story he would write. This film is jam-packed with details, detective work, conspiracies, action, adventure, and most of all mystery. It's interesting to watch because of the way that the story is told, but what holds it back is the fact it's too much of a confusing Hollywood mystery to take seriously.
The story is a generic crime/mystery story. We work our way up to "now" through a series of flashbacks. We meet our main character, Verbal (Spacey), a small time hood who is about to post bail in L.A., but Customs Special Agent Dave Kujon (Palmintari) thinks there's more to the story than he's telling them. He interviews Verbal about the history leading up to the incident that is the climax and most important part of the story.
Basically, the story surrounds five different hoods who are arrested because they are, as the title states, the usual suspects. Gabriel Byrne is fine as Keaton, the so-called leader, while Stephen Baldwin goes a bit overboard as the wannabe psycho McManus. But considering the casting of such characters, the film's first major flaw is evident (Kevin Pollack as a dangerous, wanted felon?). In fact, the characters themselves seem very out of place. Eventually the story gets past this and starts to tell its complicated story of international crime and conspiracies.
The gang is confronted by a European businessman who works for Keyser Soze, supposedly the most ruthless gangster on the Earth (although no one has heard of him). The man leaves behind evidence that could convict them all without a shadow of doubt. It turns out each of them had all stolen from Soze, but didn' t know it at the time. In order to make restitution, they must destroy a Hungarian ship supposedly carrying $91 million in cocaine from one of Soze's rivals. This is could be considered a typical gangster movie plot device, but it's not told in a typical manner.
The element of the mythological, devil-like Soze is creative, but it doesn't have as much effect on the mood as it wants to. It's almost as if the film is trying to take some of the things that made "The Crow" excellent and apply it to a more realistic setting.
Most of the film is a serious of crimes and other events between the gang and associates of Soze. There's a lot of action, but it's not always exciting because it's so difficult to tell what's happening and why. The ending is a real shocker though, it almost makes you want to watch the whole thing over again.
"The Usual Suspects" is a well-made picture, but it just tries too hard... period.
Please visit Chad'z Movie Page @ http://members.aol.com/ChadPolenz - over 140 new and old films reviewed in depth, not just blind ratings and capsules. Also, check out The FIRST Shay Astar Web Page @ http://members.aol.com/ChadPolenz/ShayAstar.html
e-mail<EMAIL_ADDRESS>(C)1997 Chad Polenz
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Analytics
-
1,5,10,5,25,30,12,22
Visits:
502
-
5,4,5,7,8,1,1,20,2
Unique Visitors:
420
-
5,3,3,98,102,155,150,187,196
Pageviews:
2054
-
5,44,53,66,378,771,341,520,452
Pages / Visit:
5.8
-
5,4,35,57,28,16,11,20,72
Avg. Visit Duration:
00:10:34
-
52,44,65,27,86,14,16,40,22
Bounce Rate:
30.30%
-
5,6,7,9,10,20,25,22,21
% New Visits:
29.35%
| Browser | Visits |
|---|---|
| Firefox | 5798 |
| Chrome | 4855 |
| Internet Explorer | 2877 |
| Safari | 2705 |
| Opera | 1985 |
| Android Browser | 850 |
| Rockmelt | 310 |


---
layout: post
title: 'minor struggles and #VictoryIsMine ?'
date: '2013-12-30T18:41:00.000-05:00'
author: Bob Sica
tags:
- computer
- open graphics
- coding
- Facebook
modified_time: '2013-12-30T23:01:57.323-05:00'
blogger_id: tag:blogger.com,1999:blog-4599947215754335931.post-7858403372303018855
blogger_orig_url: http://blog.bobsica.com/2013/12/minor-struggles-and-victoryismine.html
---
If this post appears on Facebook without a “wrench” image, or perhaps even with my picture, I will have:


Komodo
equaliser
100 messages
Before 05-Dec-19 12:00 AM
Gateway
BOT
10-Jul-18 05:12 AM
[dscrdeql] <jellysmash>
I'm having one of these
[dscrdeql] <jellysmash> To late in day for me to drink coffee
[dscrdeql] <slipersty> tea ?
Gateway
BOT
10-Jul-18 05:33 AM
[dscrdeql] <jellysmash> Yea
[dscrdeql] <jellysmash> It's 3:33pm here
[dscrdeql] <Krumlar> hallao!
[dscrdeql] <slipersty> oh then coffee might not bee good ^^
Gateway
BOT
10-Jul-18 05:50 AM
[dscrdeql] <ECA Gorillaz> 12am here
[dscrdeql] <ECA Gorillaz> but I drink coffee until like 2 hrs before bed
[dscrdeql] <x2maano> Good morning everyone
[dscrdeql] <x2maano>
[dscrdeql] <slipersty> @ECA Gorillaz i can also i dont notis the cofeine efect me
[dscrdeql] <slipersty> Bit i rarly do it becose i drick so mush during the days
[dscrdeql] <skyfyre> Noon here now
Gateway
BOT
10-Jul-18 06:13 AM
[dscrdeql] <!!!
Thorth
!!!> Morning
[dscrdeql] <!!!
Thorth
!!!>
[dscrdeql] <CryptoNoob8[BuyTheFuckingMN]> Good morning @slipersty
[dscrdeql] <CryptoNoob8[BuyTheFuckingMN]> It's evening for me here
[dscrdeql] <CryptoNoob8[BuyTheFuckingMN]> I avoid coffee after 5pm
[dscrdeql] <slipersty> yhe many do what i heard
Gateway
BOT
10-Jul-18 06:29 AM
[dscrdeql] <cypherzero> good morning!
Gateway
BOT
10-Jul-18 06:41 AM
[dscrdeql] <!!!
Thorth
!!!>
Gateway
BOT
10-Jul-18 06:50 AM
[dscrdeql] <Cryptoon>

[dscrdeql] <Cryptoon> Gonna need loooots of coffee
[dscrdeql] <Cryptoon> Today
[dscrdeql] <
KQweci
> Morning
Gateway
BOT
10-Jul-18 07:00 AM
[dscrdeql] <cypherzero>
https://cdn.discordapp.com/attachments/436529103039102978/466136704022216704/2.jpg
[dscrdeql] <jellysmash> Haha...now that's a cup and a half
[dscrdeql] <NWhiskeyTango> oh lordy
[dscrdeql] <cypherzero> This is Hard cUp :)))
[dscrdeql] <!!!
Thorth
!!!> that cup is for me
Gateway
BOT
10-Jul-18 07:40 AM
[dscrdeql] <jellysmash> My favorite time...going home time
[dscrdeql] <jellysmash> After work
[dscrdeql] <!!!
Thorth
!!!> hehe :))) agree with u
[dscrdeql] <slipersty> haha think thats many ppls favorite time ^^
[dscrdeql] <ECA Gorillaz> Alright folks I'm off to bed. Gn
[dscrdeql] <aFastHero> Off to bed. I hope everyone has had a great day/night so far. I'll be back for more shennanigans tomorrow!
[dscrdeql] <AndronicusBass-Founder>
[dscrdeql] <!!!
Thorth
!!!> nite nite @ECA Gorillaz
[dscrdeql] <!!!
Thorth
!!!> nite nite @aFastHero
[dscrdeql] <skyfyre> Night @ECA Gorillaz
[dscrdeql] <Aspire219> hey all
[dscrdeql] <!!!
Thorth
!!!> hey @Aspire219
[dscrdeql] <!!!
Thorth
!!!>
[dscrdeql] <Catalyst> Hello everyone and good afternoon
[dscrdeql] <slipersty> hello @Catalyst WB
[dscrdeql] <Catalyst> Well started me day with a connection outage :D
[dscrdeql] <Catalyst> Restored after 5 hours
[dscrdeql] <slipersty> oh so annoying
[dscrdeql] <Catalyst> Yeah.
[dscrdeql] <Catalyst> Actually life is really really dependent on internet now.
[dscrdeql] <!!!
Thorth
!!!> hey @Catalyst
[dscrdeql] <!!!
Thorth
!!!>
[dscrdeql] <slipersty> yes you feel naked without it
[dscrdeql] <Cryptoon> Guys
[dscrdeql] <Cryptoon>
https://cdn.discordapp.com/attachments/436529103039102978/466148568554799115/image.jpg
[dscrdeql] <Cryptoon> When mazda
[dscrdeql] <slipersty> hahaha lol
[dscrdeql] <Catalyst> Ahaha nice
[dscrdeql] <Catalyst> Plus it's electric
[dscrdeql] <Catalyst> Hello high alien
[dscrdeql] <!!!
Thorth
!!!> hey hey
did u get a job ? last interview was a success ???
[dscrdeql] <Cryptoon> Is it electric?
[dscrdeql] <Catalyst> Yes well I guess
[dscrdeql] <Catalyst> Naaah still jobless.. Well interview went well but they offered something which was not acceptable
[dscrdeql] <!!!
Thorth
!!!>
[dscrdeql] <!!!
Thorth
!!!> sorry to hear that
[dscrdeql] <linkara6669> apparently i passed out while i was watching my movie lol. be back in a couple hours, going to sleep a little more xD
[dscrdeql] <slipersty> oh thay did
Gateway
BOT
10-Jul-18 08:00 AM
[dscrdeql] <Catalyst> Well finding jobs in Pakistan is not easy :(
[dscrdeql] <slipersty> oh :/
[dscrdeql] <slipersty> i hope you manage too find a good job
[dscrdeql] <Catalyst> Thank you for your kind wishes
[dscrdeql] <jellysmash> @Faisal yea hope you find a meaningful job you like
[dscrdeql] <AndronicusBass-Founder> Will keep my fingers crossed for your next interview
[dscrdeql] <Catalyst> I hope so too. Thank you jelly :)
[dscrdeql] <CombatWombat> Hope you find something very good catalyst
[dscrdeql] <x2maano> best wishes for you
Gateway
BOT
10-Jul-18 08:23 AM
[dscrdeql] <Catalyst> Thanks @CombatWombat I hope so too, been struggling to get one.
Gateway
BOT
10-Jul-18 08:46 AM
[dscrdeql] <jellysmash> what industry are you looking for work in?
Gateway
BOT
10-Jul-18 08:55 AM
[dscrdeql] <jellysmash> I want to be a novice
[dscrdeql] <jellysmash> got about 3000 xp to get to novice
[dscrdeql] <AndronicusBass-Founder> dang
[dscrdeql] <jellysmash> haha...just hang in there
[dscrdeql] <AndronicusBass-Founder> well it shouldnt take long
[dscrdeql] <jellysmash> no...you're right
[dscrdeql] <jellysmash> i think i'm slightly impatient
[dscrdeql] <jellysmash> it's like having a mission
[dscrdeql] <jellysmash> sometimes it's the journy and not the destination that's important
[dscrdeql] <AndronicusBass-Founder> As the community grows more typing. but the trade off is like a video game, you can loose countless hours lol
[dscrdeql] <jellysmash> well..yes..there's that to
[dscrdeql] <jellysmash> just as well you like typing...lol
[dscrdeql] <jellysmash> get a good keyboard
[dscrdeql] <jellysmash> and put on your wittay demanour
[dscrdeql] <jellysmash> demeanour
[dscrdeql] <AndronicusBass-Founder>
https://www.tenor.co/MAs6.gif
Dont stop believing
Gateway
BOT
10-Jul-18 09:06 AM
[dscrdeql] <x2maano> rock
[dscrdeql] <AndronicusBass-Founder> journey I think
[dscrdeql] <DaylightHours> Ughhhh
[dscrdeql] <DaylightHours> Hate this


Intro
I have been using Apple hardware and software since 1996 for macOS has been the best OS to meet my needs. My first computer was a PowerBook 150. Since then, I used mostly Apple mobile solutions: PowerBook G3, PowerBook Titanium, bunch of MacBook Pro 13” and 15”. But, I’m really dissatisfied with the latest MacBook Pro 2017 as it has a useless keyboard with arrow keys designed for Tinker Bell and zero ability to upgrade up to 32Gb RAM back then in 2017. Yes. I know. This is 100% Intel failure. Just like performance and thermal issues the Intel CPU had for the last 6 years. Intel just doesn’t care about the mobile CPU market anymore.
So, finally, I made a decision to go to the dark side and to switch to the hackintosh notebook. After doing some research, I selected Razer Blade Advanced. This has, perhaps, the best combo of design (!), performance and upgradability.
Purpose
- UNIX/Linux backend software development. C, Go, Python.
- ML development (requires CUDA and Nvidia GPU).
- Embedded software and hardware development (IoT).
- Cloud and DevOps.
- iOS and macOS development mostly for fun.
- Gaming maybe once per month. Usually 3A titles like
Hardware
Razer Blade Advanced early 2019
| Spec | macOS 10.14 compatibility | |
|---|---|---|
Chipset |
Mobile Intel HM370 | No issues |
CPU |
Intel Core i7-8750H processor, 6 Cores / 12 Threads, 2.2GHz / 4.1GHz, 9MB Cache | No issues |
Memory |
16GB dual-channel DDR4-2667MHz, up to 64GB | No issues |
GPU |
Intel UHD 630 | No issues |
dGPU |
Nvidia 2070 Max-Q (8GB GDDR6 VRAM) | Nvidia Drivers absent for Mojave. ACPI should be patched to disable dGPU |
Storage |
Samsung PM981 256GB NVMe M.2 | Incompatible firmware. You can try fix with Lenovo NVMe Firmware Update Utility but better to replace |
Screen |
15.6” Full HD 144Hz, 1920 x 1080 IPS | No issues |
Webcam |
Windows Hello built-in IR HD webcam (1MP / 720P) | No issues. Windows Hello is not supported in macOS |
WiFi |
Intel Wireless-AC 9560NGW | Drivers absent for macOS. Should replaced |
Input & Output |
USB 3.1 Gen 1 (USB-A) x3 | No issues |
| Thunderbolt 3 (USB-C) | No issues | |
| HDMI 2.0B | HDMI connected directly to Nvidia GPU and will not work in macOS | |
| Mini DisplayPort 1.4 | Mini DisplayPort connected directly to Nvidia GPU and will not work in macOS | |
Soundboard |
Realtek ALC298 | No issues. ACPI patch should be added to solve sleep issue |
Battery |
80Wh | About 3-5h after proper Power Management configuration. ACPI should be patched to enable battery stats |
Keyboard |
Per-key RGB powered by Razer Chroma N-Key rollover backlit | No issues. Razer Chroma software absent for macOS |
Touchpad |
Precision Glass | No issues. ACPI should be patched to enable trackpad |
Dimensions |
17.8mm x 235mm x 355mm | |
Weight |
2.21 kg | ACPI patches will not help with this. /sarcasm |
Power |
230W power adapter |
Hardware Upgrades and Tools
The bundled WiFI
and NVMe
is not compatible with macOS and should be replaced. Please find below the recommended replacement parts, already tested for compatibility. Usually I need to deploy for testing 4-5 node Kubernetes cluster with at least 4Gb per node. So 32GB is a necessary upgrade for me.
Accessories
| Accessories | Description | Amazon URL |
|---|---|---|
USB mouse |
Trackpad will be unavailable during macOS installation procedure | Amazon |
USB storage with at least 16Gb storage |
Installation USB media | Amazon |
USB-A to USB-C cable |
For USB ports detection procedure | Amazon |
WiFi
| WiFi module | Description | eBay or AliExpress URL | Confirmation |
|---|---|---|---|
BCM94352Z (DW-1560) |
Recommended. 2 antennas. No issues. Additional kext’s are required. Easily to find for $24-60 on | eBay | community |
BCM943602BAED (DW-1830) |
3 antennas. RBA have only 2. Works out of the box. About $60-120 on AliExpress | AliExpress | community |
Storage
| NVMe | 4k Support | Amazon URL | Confirmation |
|---|---|---|---|
Samsung EVO 970 NVMe |
NO | Amazon | community |
Samsung EVO 970 Pro NVMe |
NO | Amazon | community |
Samsung EVO 970 Plus NVMe |
NO | Amazon | Do the Samsung 970 Evo Plus drives work ? New Firmware Available for testing 5/20/19 |
Sabrent Rocket NVMe |
YES | Amazon | stonevil |
WD Black SN750 NVMe |
- | Amazon | community |
HP EX900 M.2 NVMe |
- | Amazon | konohasaint |
Samsung PM981 |
NO | Bundled with Razer Blade | suyukai |
Note: Bundled Samsung NVMe PM981 can be enabled with additional macOS Extension (kext) and (ACPI hot patch). More information in suyukai
post I find a way to use macOS on SSD(pm981) in blade!…
macOS have native support and works better with 4k blocks. Check NVMe format. Performance tested with Blackmagic Disk Speed Test. Samsung EVO 970 1Tb NVMe and Sabrent Rocket 1Tb NMVe have the same Read/Write performance. But Samsung EVO stays about 8-12° C hotter on heave load. Even with additional passive cooling.
Note: I do recommend to use at least 1Tb NVMe for dual boot with Windows 10.
RAM
| Memory module | Modules size | Speed | CL | Amazon URL | Confirmation |
|---|---|---|---|---|---|
Ballistix Sport LT 32GB |
2x16Gb | 2666 | CL16 | Amazon | stonevil |
Kingston Technology HyperX Impact 32GB |
2x16Gb | 2666 | CL15 | Amazon | Razer Blade 15 Advanced RAM upgrade |
Recommended Upgrades
| Accessories | Description | Amazon URL | Confirmation |
|---|---|---|---|
Advancing Gene NVMe M.2 Heatsink |
Passive cooling for NVMe. Decreased temperature for about 10-12° C on heave load | Amazon | stonevil |
Recommended Tools
| Tool | URL |
|---|---|
iFixIt Pro Tech Toolkit |
iFixIt |
(Optional) Extreme Upgrade only for Advance Gamers
| Accessories | Description | Amazon URL |
|---|---|---|
Thermal Grizzly Conductonaut Thermal Grease Paste |
Liquid metal thermal paste | Amazon |
MG Chemicals 422B Silicone Modified Conformal Coating |
Coating | Amazon |
3M Scotch Super 88 Vinyl Electrical Tape |
Electrical tape | Amazon |
Useful information
Repository
BIOS_mod/
folder. This folder contains the latest RBA AMI BIOS mod with all the required unlocked options.
This BIOS mod is actual only for Razer Blade Advanced early 2019 with
| Version | |
|---|---|
System BIOS |
1.05 |
EC FW |
1.03 |
MCU FW |
<IP_ADDRESS> |
Do not use this mod if your system is different! Please check with BIOS.
BIOS_mod/Nvidia_2080_Max-Q_BIOS_mod/
this folder contains patches for 80w or 90w TDP for Nvidia 2080 Max-Q.
EFI/
folder is basically a full copy of my EFI folder from EFI drive with a removed machine serial number.
ACPI Patches
EFI/CLOVER/ACPI/patched/DSDT.aml
EFI/CLOVER/ACPI/patched/SSDT-12-OptTabl.aml
EFI/CLOVER/ACPI/patched/SSDT-USBX.aml
can be different for your computer.
Extensions/
folder with all required macOS Extensions (kext’s).
Tools/
folder with various tools to flash BIOS, etc. macOS IORegistryExplorer v2.1 is included with this repository. This tool is necessary for debugging USB, etc. configuration.
Tools/AMI/
is a folder with AMI BIOS flashing and modding tools.
Tools/Nvidia/
is a folder with Nvidia BIOS flashing tools.
Development/ACPI_patches/
is a folder with uncompiled versions of the SSDT’s created for various ACPI hot patches.
Drivers/Windows/Apple USB Ethernet drivers for Windows
is a folder with Apple USB-A Ethernet drivers for Windows extracted from Apple BootCamp
.
Required Tools
| Tool | Description | Download URL |
|---|---|---|
balenaEtcher |
a free and open-source utility used for burning image files such as .iso and .img files, as well as zipped folders to create live SD cards and USB flash drives. | balenaEtcher |
UniBeast |
a tool for building macOS installation media | UniBeast |
TINU |
an alternative tool for building macOS installation media | TINU |
Clover Configurator |
an easy to use macOS application designed to help you create custom configuration files for the Clover EFI bootloader via a streamlined graphical interface | Clover Configurator |
KextBeast |
a quick installer for .kext, .bundle, and .plugin files | KextBeast |
Continuity Activation Tool |
is a tool that makes the changes necessary to enable Continuity features on compatible hardware | Continuity Activation Tool |
Kext Updater |
this little tool is totally easy to have up-to-date kext’s | Kext Updater |
MaciASL |
a native AML compiler and IDE for OS X, with syntax colouring, tree navigation, automated patching, online patch file repositories, and iASL binary updates, written entirely in Cocoa, conforms to OS X guidelines | MaciASL |
iasl |
-//- | iasl |
GenSMBIOS |
a Py script that uses acidanthera’s macserial to generate SMBIOS and optionally saves them to a plist | GenSMBIOS Github Repository |
one-key-cpufriend |
a script for modifying macOS CPU Performance | one-key-cpufriend Github Repository |
USBMap |
a Py script for mapping out USB ports and creating a custom SSDT or injector kext (WIP) | USBMap Github Repository |
Intel Power Gadget |
a software-based power usage monitoring tool enabled for Intel Core processors | Intel Power Gadget |
iStat Menus |
an advanced Mac system monitor | iStat Menus |
Prime95 |
a free Mersenne Prime search tool. Maybe, the best tool for CPU torture testing | Prime95 |
UNetbootin |
this tool allows you to create bootable USB drives for Windows and Ubuntu and other Linux distributions without burning a CD. | UNetbootin |
Preparation
BIOS update
It is very important to make all the updates for BIOS before starting any macOS deployment. ACPI sources will be different after BIOS update and this will require to dump ACPI sources and patch them again. And, that is not a pleasant task.
Download BIOS, EC, ME, etc. Firmware and apply them from stock Windows partition.
Razer Hardware Drivers download URL
- Boot into Windows.
- Open Razer Hardware Drivers download URL in preferred browser.
- Download the latest BIOS, EC, ME, etc. Firmware updates.
- Apply these updates in a required order. This is very important! Read documentation carefully.
Useful information
BIOS unlock
Certain changes for the BIOS configuration should be done to make macOS bootable on the Razer Blade Advanced.
- Disable
VT-d
. Apple stopped supporting this long time ago and will not boot in some cases with enabledVT-d
. Do not mistakeVT-d
forVMX
orVTX
. - Increase memory pre-allocated for
DVMT
. UsuallyDVMT
is pre-allocated for32Mb
. MacOS requires64Mb
minimum. - Deactivate
CFG-Lock
. Required by macOS Power Management. - Disable
Secure Boot
. - etc.
Some of these configurations can be fixed one or another way in Clover
configuration file. But, it is better to play safe and change configuration in BIOS. Deactivation of the CFG-Lock
can help a lot with power management.
If the BIOS is upgraded to the latest version and
| Version | |
|---|---|
System BIOS |
1.05 |
EC FW |
1.03 |
MCU FW |
<IP_ADDRESS> |
it’s safely to use already modded dump from BIOS_mod/
folder and jump to BIOS flashing.
Otherwise, follow the BIOS export step.
BIOS export
- Boot into Windows.
- Download this repository.
- Open
Tools\AMI\AfuWin64\
folder. - Run
AFUWINGUIx64.EXE
application. - In
AFUWINGUI
application clickSave
button to export current BIOS.
- Save BIOS to
Desktop
folder. - Close
AFUWINGUI
application.
BIOS modding
Most of the options are required for further undervolting and overclocking. But, some of them are necessary for the macOS. These options are marked with !
- Open
Tools\AMI\AMIBCP64\
folder. - Run
AMIBCP64.exe
application. - In
AMIBCP
application clickOpen
, navigate toDesktop
and open BIOS saved in previous steps. - In
AMIBCP
application- Unfold root folder in the left pane. This folder is blank and have no name.
- Unfold
Setup
subfolder. - Click
Power & Performance
subfolder.- In the right pane, change
Access/Use
fromDefault
toUSER
forPower & Performance
(second row from top)CPU - Power Management Control
!Intel(R) Speed Shift Technology
- In the right pane, change
- Unfold
CPU VR Settings
- Click
View/Configure CPU Lock Configuration
folder in the left pane - In right the pane, change
Access/Use
fromDefault
toUSER
forCFG Lock
Overclocking Lock
- Click
CPU - Power Management Control
folder in the left pane- In the right pane, change
Access/Use
fromDefault
toUSER
forCPU - Power Management Control
(second row from top) !Intel(R) SpeedStep(tm)
Intel(R) Speed Shift Technology
C states
Package C State Limit
CPU Lock Configuration
(scroll way down) !
- In the right pane, change
- Click
OverClocking Performance Menu
folder in the left pane- In the right pane, change
Access/Use
fromDefault
toUSER
forOverClocking Performance Menu
(second row from top)XTU Interface
Processor
Ring
GT
Uncore
Memory
- In the right pane, change
- Unfold
OverClocking Performance Menu
subfolder. - Click
Processor
folder in the left pane- In the right pane, change
Access/Use
fromDefault
toUSER
forProcessor
(second row from top)Core Voltage Offset
Offset Prefix
belowCore Voltage Offset
- In the right pane, change
- Click
Ring
folder in the left pane- In the right pane, change
Access/Use
fromDefault
toUSER
forRing
(second row from top)Ring Max OC Radio
Ring Down Bin
Min Ring Ratio Limit
Max Ring Ratio Limit
- In the right pane, change
- Click
GT
folder in the left pane- In the right pane, change
Access/Use
fromDefault
toUSER
forGT Domain
(second row from top)GT Voltage Offset
Offset Prefix
belowGT Voltage Offset
GTU Voltage Offset
Offset Prefix
belowGTU Voltage Offset
- In the right pane, change
- Click
Uncore
folder in the left pane- In the right pane, change
Access/Use
fromDefault
toUSER
forUncore
(second row from top)Uncore Voltage Offset
Offset Prefix
belowUncore Voltage Offset
- In the right pane, change
- Click
Memory Overclocking Menu
folder in the left pane- In the right pane, change
Access/Use
fromDefault
toUSER
forMemory Profile
(second row from top) RAM XMP ProfileMemory Profile
(another one somewhere in the middle of the list) RAM XMP profileMemory Reference Clock
RAM XMP ProfileMemory Ratio
RAM XMP ProfileMemory Voltage
RAM XMP Profile
- In the right pane, change
- Click
Chipset
folder in the left pane- In the right pane, change
Access/Use
fromDefault
toUSER
forSystem Agent (SA) Configuration
(second row from top) !
- In the right pane, change
- Unfold
Chipset
subfolder. - Click
System Agent (SA) Configuration
folder in the left pane- In the right pane, change
Access/Use
fromDefault
toUSER
forSystem Agent (SA) Configuration
(second row from top) !VT-d
!Graphics Configuration
!PEG Port Configuration
VT-d
(another one somewhere in the middle of the list) !
- In the right pane, change
- Unfold
System Agent (SA) Configuration
folder in the left pane - Click
Graphics Configuration
folder in the left pane- In the right pane, change
Access/Use
fromDefault
toUSER
forGraphics Configuration
(second row from top) !Primary Display
Internal Graphics
DVMT Pre-Allocated
!DVMT Total Gfx Mem
!
- In the right pane, change
- Click
PEG Port Configuration
folder in the left pane- In the right pane, change
Access/Use
fromDefault
toUSER
forPEG Port Configuration
(second row from top)ASPM
ASPM L0s
- In the right pane, change
- Click
Save As
inAMIBCP
application. - Save BIOS with new name to
Desktop
folder. - Close
AMIBCP
application.
BIOS flashing
- Open
Tools\AMI\AfuWin64\
folder. - Run
AFUWINGUIx64.EXE
application. - In
AFUWINGUI
application clickOpen
button. - Choose new modded BIOS from
Desktop
folder. - Close all application except
AFUWINGUI
. Close also all Windows TaskBar apps like Nvidia Expierence, Razer, etc. - Click
Flash
button inAFUWINGUI
application and confirm flashing BIOS.
- Follow
AFUWINGUI
application on-screen instruction. - Close
AFUWINGUI
application. - Reboot Windows.
Useful information
BIOS configuration
There are a few changes in the BIOS that are vital to make macOS happy and bootable on RBA. Undervolting and Overclocking are explained in the following chapter.
- Reboot computer.
- Repeatedly press
DEL
key to enter BIOS configuration menu. - In BIOS navigate to menu
Advanced
Power & Performance
CPU - Power Management Control
CPU Lock Configuration
- Disable
CFG Lock
- Disable
Overclocking Lock
- Disable
Advanced
Overclocking Performance Menu
- Disable
XTU Interface
- Disable
Advanced
Thunderbolt(TM) Configuration
- Switch
Security Level
toNo Security
- Switch
Chipset
System Agent (SA) Configuration
Graphics Configuration
- Set
DVMT Pre-Allocated
to64
- Set
DVMT Total Gfx Mem
toMAX
- Set
Chipset
System Agent (SA) Configuration
- Disable
VT-d
- Disable
Chipset
SATA And RST Configuration
- Check
SATA Mode Selection
set toAHCI
- Check
Security
- Set
Secure Boot
toDisabled
- Set
Boot
- Set
Fast Boot
toDisabled
CSM Configuration
- Set
CSM Support
toDisabled
- Set
- Set
Save and Exit
- Hit
Save Changes
- Hit
Save Changes and Reset
- Hit
Note: If some of these options are not available in BIOS, please, boot back in Windows and check modded BIOS dump for missing changes.
Hardware preparation
WiFi and NVMe replacement
WiFi and NVMe replacement is easy enough for this Model. You just need to unscrew the bottom case. Check the video provided below for more information.
Useful information
- How to Upgrade the Razer Blade 15 RAM & SSD
- Razer Blade Advanced RTX 2070 SSD Replacement
- INVENTORY OF SUPPORTED/UNSUPPORTED WIRELESS CARDS #2, SIERRA -> CATALINA
(Optional) NVMe format with 4k block
This step is optional. MacOS works faster and better with NVMe with 4k blocks. Usually NVMe formatted with 512 or 512e block size for unknown reason. Maybe another Windows compatibility issue. Anyway, Windows 10 works with no issues with NVMe with 4k blocks.
The best way to format NVMe drive is to boot from Linux Live USB media and use smartctl
and nvme-cli
tools.
- Download balenaEtcher on Windows or macOS machine.
- Download Ubuntu Desktop Live Image on same Windows or macOS machine.
- Insert USB media with at least 16Gb. Drive will be formatted and all data will be erased.
- Run
balenaEtcher
- Select image
Ubuntu Desktop Live Image
downloaded before.
- Select USB media.
- And press
Flash!
.
Note: Ubuntu lacks the support by default drivers for most Broadcom WiFi modules.
There are 2 way to overcome this issue:
- Use
USB to Ethernet
cable. - Install proprietary WiFi drivers. Follow this instruction WifiDocs/Driver/bcm43xx
| Accessories | Description | Amazon URL |
|---|---|---|
USB to Ethernet |
Internet access | AmazonBasics USB 3.0 to 10/100/1000 Gigabit Ethernet |
To change NVMe drive block size
- Install a new NVMe drive in the target Razer Blade.
- Insert USB media with
Ubuntu Desktop
. - Press
Power Button
to start computer. - Press repeatedly
F12
until youBoot Menu
will show. - Select USB media with
Ubuntu Desktop
. - Select
Try Ubuntu without installation
- When
Ubuntu
starts connect computer to the Internet. This can be done from the WiFi menu in the top right corner.
- Click on the bottom left button and type
Terminal
and pressEnter
.
- In
Terminal
application type
sudo apt -y install smartmontools
- and press Enter.
- In
Postfix Configuration
window selectNo configuration
withUp/Down
arrow keys and pressEnter
.
- In
Terminal
application type
sudo apt -y install nvme-cli
- and press Enter.
- If previous command fails with error
E: Unable to locate package nvme-cli
use this URL http://mirrors.kernel.org/ubuntu/pool/universe/n/nvme-cli/nvme-cli_0.5-1_amd64.deb to installnvme-cli
on Ubuntu.
- Click on a download button on the top right
Firefox
window corner. - Click on the downloaded package and click
Open
. - In the installer window click
Install
button.
- Verify your NVMe to be recognized and manage 4K blocs by typing this command in
Terminal
window
sudo smartctl -a /dev/nvme0
- and press
Enter
- You should have two lines under
Supported LBA sizes
one with data512B
starting with ID0
one with data4K
starting with ID1
.
- If
4K
is absent, NVMe does not support 4k blocks. Reboot computer and follow macOS install media preparation. - Usually NVMe formatted to
512B
. And this512B
will be marked with asterix*
or+
. - Format the NVME with
4K
blocs with the command
sudo nvme format -l 1 /dev/nvme0
- and press
Enter
and follow on-screen instructions.
- This command will erase all the information on the NVMe drive.
- To verify that the LBA 4K size is properly selected re-type the
smartctl
command
sudo smartctl -a /dev/nvme0
Useful information
- Ubuntu WifiDocs/Driver/bcm43xx
- nvme-cli
- nvme-cli package in Ubuntu
- smartmontools
- Gilles 4k NVMe format procedure
(Optional) Liquid Metal re-paste
Be very careful and do this at your OWN RISK!
This step is not necessary and can be recommended only for hardcore gamers with experience of building their own rigs. Razer is already using very good thermal paste, so re-pasting thermal paste is not very useful until liquid metal is used. The Grizzly Conductonaut Thermal Grease Paste
may be the best one. Read more about liquid metal thermal paste and all the issues it can cause before making the decision to proceed.
Useful information
macOS
macOS install media preparation
Use you own OR borrow some friend Mac computer.
- On macOS, download
UniBeast
ORTINU
up to your preferences. - Run
UniBeast
ORTINU
application. - Follow the instruction and build macOS installation media macOS 10.14 Mojave. It is very important to build media with the latest available version of Mojave.
- Copy this applications and the files to the USB installation media
Clover Configurator
KextBeast
MaciASL
iasl
- This repository ZIP archive.
Useful information
macOS installation
- Insert the macOS USB install media.
- Boot/Reboot computer.
- Press repeatedly
F12
until youBoot Menu
will show. - Select the macOS USB install media.
- Open
Disk Utility
fromTools
menu. - Format NVMe to
APFS
. - Follow usual macOS installation procedure.
- After reboot repeatedly tap
F12
again until getBoot Menu
. - Select macOS USB install media again to boot in
Clover
. - In
Clover
, select NVMe drive to continue installation. - Repeat this procedure again when macOS reboots the computer.
- Follow the usual macOS installation procedure.
- You can use TimeMachine Backup restore procedure during macOS installation.
Note: Do not try to connect the computer with iCloud before you generate proper SMBIOS! This step is explained in the ‘iCloud. iMessages and FaceTime’ step.
Useful information
Install EFI and Extensions
Once the macOS installation is finished:
- Login with the user with admin privileges: usually, the first one created during the installation procedure.
- Run
Clover Configurator
application from the USB installation media. - From
Mount EFI
on the left side mount NVMe EFI partition. - Copy this repository ZIP archive file to
~/Desktop/
. - Unarchive this repository Zip archive file on
~/Desktop/
. - Copy the folder
EFI
from unpacked archive to previously mountedEFI
partition. - If you have different version of Razer Blade, please remove files listed below from
EFI
partition, otherwise this can cause kernel panic or other issuesEFI/CLOVER/ACPI/patched/DSDT.aml
EFI/CLOVER/ACPI/patched/SSDT-12-OptTabl.aml
EFI/CLOVER/ACPI/patched/SSDT-USBX.aml
- Copy all
.kext
files from the folderExtensions
from previously unpacked archive to the~/Desktop/
folder. Do not copyCPUFriendDataProvider.kext
if you have different version of Razer Blade! - Run
KextBeast.pkg
application from the USB installation media. - Click
Continue
and clickAgree
. - Select
/Library/Extensions
and clickContinue
. - Click
Install
. - If extensions are installed without any issues run
Terminal
application from the/Applications/Utilities
folder. - In
Terminal
application window type
sudo kextcache -i /
- and press
Enter
. - When command
kextcache
finish execution, unmount and detach the macOS USB installation media, and reboot computer to apply new configuration. - Repeatedly press
DEL
key to enter BIOS configuration menu. - In BIOS, navigate to menu
Boot
- Set
Boot Option #1
toUEFI OS (drive_name)
- Set
Boot Option #2
and all nextBoot Option #
toDisabled
- Set
Save and Exit
- Hit
Save Changes
- Hit
Save Changes and Reset
- Hit
- Computer should boot
Clover
and showClover Boot Menu
. - If you have same Razer Blade Model trackpad, battery status, audio should become available.
If you have the same Razer Blade model, you are safe to jump to step iCloud. iMessages and FaceTime. Otherwise, you need to generate custom ACPI hot patches and USB mapping specific to your Razer Blade model.
Disable Hibernation
Hibernation does not work correctly with the majority of hackintosh notebooks anyway.
- Run
Terminal
application from/Applications/Utilities/
folder. - To disable
hibernation
type and execute this command inTerminal
application window
sudo pmset -a hibernatemode 0
- To remove
hibernation
sleepimage
type and execute this command inTerminal
application window
sudo rm /var/vm/sleepimage
- To prevent create
hibernation
sleepimage
in future type and execute this command inTerminal
application window
sudo mkdir /var/vm/sleepimage
Tweak Energy Saver
- Open
System Preferences
. - Click
Energy Saver
. - Click tab
Power Adapter
.
- Disable
Wake for Wi-Fi network access
. - Disable
Enable Power Nap while plugged into a power adapter
.
ACPI patching
If you have a little bit different version of Razer Blade (just like mid 2019 Model OR Base Model OR different version of BIOS) the ACPI and USB patches will not be compatible with you Razer Blade!
In this case, ACPI hot patches should be created from scratch.
Again, it is very important to apply all BIOS patches, firmware updates before this step (!).
ACPI export
- Reboot computer.
- In
Clover Boot Menu
pressF2
andF4
. - Repeat again with
fn
+F2
andfn
+F4
. - Select normal macOS boot.
DSDT patching for battery, trackpad
- Login with the user with admin privileges: usually the first one created during installation procedure.
- Run
Clover Configurator
and mount NVMeEFI
partition. - Navigate to folder
/Volumes/EFI/EFI/CLOVER/ACPI/
. - Copy folder
origin
toDesktop
folder. - Copy
MaciASL
from the macOS USB installation media or re-download from Internet to~/Applications/
folder. - Copy
iasl
from the macOS USB installation media or re-download from Internet to. - Unpack
iasl.zip
if required. - Run
Terminal
application from/Applications/Utilities/
folder. - Copy
iasl
from~/Downloads/
folder to/usr/local/bin/
folder with command inTerminal
application
sudo cp ~/Downloads/iasl /usr/local/bin/
- Navigate to
~/Desktop/origin/
folder inTerminal
application with commandcd ~/Desktop/origin/
. - Disassembling
.aml
files with command inTerminal
application
/usr/local/bin/iasl -da -dl DSDT.aml SSDT*.aml
- Run
MaciASL
application and open file~/Desktop/origin/DSDT.dsl
. - Click
Patch
button intoolbar
. - In
Patch
window on left panel scroll and find[bat] Razer Blade (2014)
and clickApply
. Do not close window!
- In
Patch
window on the left panel, scroll and find[gfx0] Disable/Enable on _WAK/_PTS (DSDT)
and clickApply
. Do not close the window!
- Click
Close
inPatch
window. - Click
Compile
button intoolbar
.DSDT
should be compiled without any issues. - Do not close this window.
Next step is hot patch DSDT for brightness settings between reboots.
- Hit
Command+F
forSearch
and search for deviceDevice (ALSD)
. It should look like this:
Device (ALSD)
{
Name (_HID, "ACPI0008") // _HID: Hardware ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (ALSE, 0x02))
{
Return (0x0B)
}
Return (Zero)
}
Method (_ALI, 0, NotSerialized) // _ALI: Ambient Light Illuminance
{
Return (Or (ShiftLeft (LHIH, 0x08), LLOW))
}
Name (_ALR, Package (0x05) // _ALR: Ambient Light Response
{
Package (0x02)
{
0x46,
Zero
},
Package (0x02)
{
0x49,
0x0A
},
Package (0x02)
{
0x55,
0x50
},
Package (0x02)
{
0x64,
0x012C
},
Package (0x02)
{
0x96,
0x03E8
}
})
}
- And replace this device
Device (ALSD)
description with:
Device (_SB.ALS0)
{
Name (_HID, "ACPI0008") // _HID: Hardware ID
Name (_CID, "smc-als") // _STA: Status
Name (_ALI, 300) // _ALI: Ambient Light Illuminance
Name (_ALR, Package () // _ALR: Ambient Light Response
{
Package () { 100, 300 },
})
}
Next step is hot patch DSDT for trackpad.
- Mount
IORegistryExplorer.dmg
from folderTools
. - Right click on
IORegistryExplorer.app
application icon.
- Open
IORegistryExplorer.app
application withOpen
option in right click menu. - Thera are possibility macOS will ask for admin password.
- Search for
TPD0
. It can be very different for different computer but for Razer Blade notebooks isTPD0
.
- Open IOInterruptSpecifiers.
- Write down the first two numbers from the
Value
column as0xXX
(In this case for Razer Blade Advanced early 2019APIC
pin number is0x5a
. ThisAPIC
pin number will be required duringTrackpad GPIO Pinning
procedure. - Switch back to
MaciASL
application with opened file~/Desktop/origin/DSDT.dsl
. - Hit
Command+F
forSearch
and search for methodSSCN
in scopeScope (_SB.PCI0.I2C0)
lines like below.
Method (SSCN, 0, NotSerialized)
{
Return (PKG3 (SSH0, SSL0, SSD0))
}
Method (FMCN, 0, NotSerialized)
{
Return (PKG3 (FMH0, FML0, FMD0))
}
- Copy this block
- Rename this methods to something like this:
Method (_SCN, 0, NotSerialized)
{
Return (PKG3 (SSH0, SSL0, SSD0))
}
Method (_MCN, 0, NotSerialized)
{
Return (PKG3 (FMH0, FML0, FMD0))
}
- Find a code like this:
Scope (_SB.PCI0.I2C0)
{
Name (I2CN, Zero)
Name (I2CX, Zero)
Method (_INI, 0, NotSerialized) // _INI: Initialize
{
Store (SDS0, I2CN)
Store (Zero, I2CX)
}
Device (TPD0)
- Above line
Device (TPD0)
paste the previously copied code. The result should look like this:
Scope (_SB.PCI0.I2C0)
{
Name (I2CN, Zero)
Name (I2CX, Zero)
Method (_INI, 0, NotSerialized) // _INI: Initialize
{
Store (SDS0, I2CN)
Store (Zero, I2CX)
}
Method (SSCN, 0, NotSerialized)
{
Return (PKG3 (SSH0, SSL0, SSD0))
}
Method (FMCN, 0, NotSerialized)
{
Return (PKG3 (FMH0, FML0, FMD0))
}
Device (TPD0)
- Scroll down to method
_CRS
for scope_SB.PCI0.I2C0
. It should look like this:
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
If (LLess (OSYS, 0x07DC))
{
Return (SBFI)
}
If (LEqual (TPDM, Zero))
{
Return (ConcatenateResTemplate (I2CM (I2CX, BADR, SPED), SBFG))
}
Return (ConcatenateResTemplate (I2CM (I2CX, BADR, SPED), SBFI))
}
- And replace with:
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Return (ConcatenateResTemplate (I2CM (I2CX, BADR, SPED), SBFG))
}
- Click
Compile
button intoolbar
.DSDT
should be complied without any issues. - Choose
Save
fromFile
menu. - Choose
Save As…
fromFile
menu. - Down below in
Save
window selectACPI Machine Language Binary
fromFile Format:
menu. - Save this file as
DSDT.aml
.MaciASL
application will recommend the file name automatically.
- Copy the newly created file
DSDT.aml
to/Volumes/EFI/EFI/CLOVER/ACPI/patched/
- Restart computer. After restart you will get working trackpad in
Polling Mode
.
(Optional) Trackpad GPIO Pinning
This step is optional but highly recommended.
Before you begin make sure you computer’s Platform Controller Hub is Cannon Point-H (Coffee Lake CPU). For other platforms tables will be different. In this case please check with GPIO Pinning documentation.
- Check with
APIC
pin number saved in previous procedure (In this case for Razer Blade Advanced early 2019APIC
pin number is0x5a
. - Write down the label of form
GPP_XYY_IRQ
by searching up theAPIC
pin number on Cannon Point-H Labels. For0x5a
it will beGPP_C18_IRQ
.
- Write down the decimal
GPIO
pin number by searching the label on Cannon Point-H Decimal Pin Numbers. ForGPP_C18
it will be69
.
- Write down the
CHIPSET_GPP
by searching the labelGPP_X
on Cannon Point-H Chipset GPP. ForGPP_C18
label will beGPP_C
andCHIPSET_GPP
will be:
CNL_GPP(0, 51, 74, 64), /* GPP_C */
Chipset_GPP
format isCHIPSET_GPP(num, base, end, gpio_base)
- Calculate a usable GPIO pin by taking the
decimal pin number - base + gpio_base
. - For Razer Blade Advanced early 2019 is:
69-51+64 = 82
- Use Decimal to Hexadecimal Converter to convert decimal to hexadecimal. In this case it will be
52
.
- Now find something that looks like this under
Device (TPD0)
Name (SBFG, ResourceTemplate ()
{
GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000,
"\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
)
{ // Pin list
0x0000
}
})
- And replace the pin with the calculated GPIO pin XX. In this case it will be
52
.
Name (SBFG, ResourceTemplate ()
{
GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000,
"\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
)
{ // Pin list
0x52
}
})
- Find the method
_CRS
from before and change to
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Return (ConcatenateResTemplate(SBFB, SBFG))
}
- Click
Compile
button intoolbar
.DSDT
should be complied without any issues. - Choose
Save
fromFile
menu. - Choose
Save As…
fromFile
menu. - Down below in
Save
window selectACPI Machine Language Binary
fromFile Format:
menu. - Save this file as
DSDT.aml
.MaciASL
application will recommend the file name automatically.
- Copy the newly created file
DSDT.aml
to/Volumes/EFI/EFI/CLOVER/ACPI/patched/
Next step is hot patch ACPI to disable Nvidia GPU in macOS for saving battery and decreasing the overall heat.
Nvidia GPU disable
- Open
SSDT-12-OptTabl.dsl
withMaciASL
application. - Find this header:
\_SB.PCI0.PEG0.PEGP and expand it, click on _OFF
- Find this line of code:
Method (_OFF, 0, Serialized) // _OFF: Power Off
- Above the code, paste this line of code:
Method (_INI) {_OFF() } // added to call _OFF
- Once that is pasted in, click on the
Patch
button intoolbar
and copy and paste this code into thePatch
window:
into method label _INI parent_label \_SB.PCI0.GFX0 insert
begin
//added to turn nvidia/radeon off\n
External(\_SB.PCI0.PEG0.PEGP._OFF, MethodObj)\n
\n
end;
- Close the
Patch
window. - Click
Compile
button intoolbar
. - If
SSDT-12-OptTabl.dsl
is compiled without any issues skip to next patch. If compilation failed with error:
[Unknown ASL Compiler exception ID] (TGPC [Integer])
- Hit
Command+F
forSearch
, search for a line like below and delete this line.
External (_SB_.PCI0.PEG0.TGPC, IntObj) // (from opcode)
- Now,
SSDT-12-OptTabl.dsl
should be compiled without any issues. - Click
Patch
button intoolbar
. - Click
Close
inPatch
window. - Click
Compile
button intoolbar
.SSDT-12-OptTabl.dsl
should be compiled without any issues. - Choose
Save
fromFile
menu. - Choose
Save As…
fromFile
menu. - Down below in
Save
window selectACPI Machine Language Binary
fromFile Format:
menu. - Save this file as
SSDT-12-OptTabl.aml
.MaciASL
application will recommend this file name automatically.
- Copy newly created file
SSDT-12-OptTabl.aml
to/Volumes/EFI/EFI/CLOVER/ACPI/patched/
Useful information
- Slave address not acknowledged in new ELAN devices
- Patching LAPTOP DSDT/SSDTs
- Native Power Management for Laptops
- Quick Guide to Generate a SSDT for CPU Power Management
- Generate SSDT For Coffee Lake CPU
- IORegistryExplorer
- GPIO Pinning
- Cannon Point-H Labels
- Cannon Point-H Decimal Pin Numbers
- Cannon Point-H Chipset GPP
USB mapping
Required Accessories
| Device | USB version | USB connection type |
|---|---|---|
| Any | 2.0 | USB-A |
| Any | 3.0 | USB-A |
| Any | 3.x | USB-C |
| Cable | USB-A to USB-C cable Amazon | USB-C |
- Download
USBMap
repository.- USBMap repository URL
- Read USBMap README carefully.
- Open
USBMap
folder in Terminal.app OR iTerm.app if you prefer this one. - Make
USBMap.command
executable withchmod +x USBMap.command
. - Detach all the USB devices from the Razer Blade.
- Run
USBMap.command
with./USBMap.command
.
#######################################################
# USBMap #
#######################################################
Plist: USB.plist
UIA Boot Args: None
USBInjectAll: Not Loaded - NVRAM boot-args WILL NOT WORK
AptioMemoryFix: Loaded
NVRAM Arg Options:
E. Apply Exclusion-Arg.txt
H. Exclude HSxx Ports (-uia_exclude_hs)
S. Exclude SSxx Ports (-uia_exclude_ss)
C. Clear Exclusions
R. Remove USB.plist from Scripts Folder
T. Reset Settings to Defaults
P. Edit Plist & Create SSDT/Kext
D. Discover Ports
U. Validate USB Power Settings
Q. Quit
Please select an option:
- Press
U
toValidate USB Power Settings
. - Command will show something like this:
#######################################################
# Validating USB Power Settings #
#######################################################
Checking EC
- EC is properly setup
Checking USBX requirements
- MacBookPro15,2 not found in IOUSBHostFamily.kext - checking for USBX
--> USBX device found: USBX@0
EC Setup Properly: True
USBX Setup Properly: True
Press [enter] to return
- If command asks required confirm to install
USBX
. - Press
Q
to go back to the main screen. - Press
P
to get to theEdit Plist & Create SSDT/Kext
screen. - Press
T
to get the list of USB types. It will be useful.
#######################################################
# USB Types #
#######################################################
0: Type A connector
1: Mini-AB connector
2: ExpressCard
3: USB 3 Standard-A connector
4: USB 3 Standard-B connector
5: USB 3 Micro-B connector
6: USB 3 Micro-AB connector
7: USB 3 Power-B connector
8: Type C connector - USB2-only
9: Type C connector - USB2 and SS with Switch
10: Type C connector - USB2 and SS without Switch
11 - 254: Reserved
255: Proprietary connector
Per the ACPI 6.2 Spec.
Press [enter] to return
- Press
Enter
to return to theEdit Plist & Create SSDT/Kext
screen. - Press
M
to return to theMain
screen. - Press
D
toDiscover Ports
. - If all USB devices are removed and detached properly,
USBMap
will show the list of internal USB devices such as Bluetooth, Integrated Camera, Razer Blade.
#######################################################
# Detecting Ports #
#######################################################
1. HS01 - Controller XHC
2. HS02 - Controller XHC
3. HS03 - Controller XHC
4. HS05 - Controller XHC
- BCM20702A0
5. HS06 - Controller XHC
6. HS07 - Controller XHC
- Integrated Camera
7. HS08 - Controller XHC
- Razer Blade
8. HS09 - Controller XHC
9. HS10 - Controller XHC
10. HS11 - Controller XHC
11. HS13 - Controller XHC
12. HS14 - Controller XHC
13. SS01 - Controller XHC
14. SS02 - Controller XHC
15. SS03 - Controller XHC
Populated: XHC:3
Press Q then [enter] to stop
Waiting 5 seconds:
- Write down the USB port identifications for the internal USB devices. This information will be required later to properly setup the USB type to properly enable a sleep mode. For RBA early 2019, it will be like this:
- HS05 - Controller XHC - Bluetooth
- HS07 - Controller XHC - Integrated Camera
- HS08 - Controller XHC - Razer Blade
- You will need to mark these ports like
255
later. - Detect properly
USB 2.0
ports.- Insert in every
USB-A
port for 15-20sec and detachUSB 2.0
(!) device. Command will highlight the newly detected ports with colour. - Write down the ports number.
- Insert in every
- Detect properly
USB 3.0
ports.- Insert in every
USB-A
port for 15-20sec and detachUSB 3.0 or 3.1
(!) device. Command will highlight the newly detected ports with colour. - Write down the ports number.
- Insert in every
- Detect properly
USB-C
ports.- Insert
USB-C
device intoUSB-C
port for 15-20sec and detach. Command will highlight the newly detected ports with colour. - Write down the ports number.
- Insert
USB-A 2.0
device intoUSB-C
port withUSB-A to USB-C
cable for 15-20sec and detach. Command will highlight the newly detected ports with colour. - Write down the ports number.
- Insert
- When ports are detected, press
Q
to go back to theMain
screen. - In the
Main
screen, pressP
to openEdit Plist & Create SSDT/Kext
screen. - All ports will be automatically marked like
Type 3
ports. - Mark internal ports like
Type 255
. This is very important to enable a sleep mode. Without this computer will wake up every 20-40secs even with the lid closed. - Here, there are tips how to do this:
Select ports to toggle with comma-delimited lists (eg. 1,2,3,4,5)
Change types using this formula T:1,2,3,4,5:t where t is the type
Set custom names using this formula C:1:Name - Name = None to clear
- You can do this with a command. For example:
T:4,6,7:255
- Next you need to mark properly
Type
forUSB-C
.- In my case
SS03
isType 9
. - And
SS03
isUSB 2.0
Type 8
.
- In my case
- Next is to build and install
USBMap.kext
. - Press
K
to executeBuild USBMap.kext
.
#######################################################
# Creating USBMap.kext #
#######################################################
Loading plist
Generating Info.plist
Writing to USBMap.kext
- Created USBMap.kext!
Checking EC
- EC is properly setup
Checking USBX requirements
- MacBookPro15,2 not found in IOUSBHostFamily.kext - checking for USBX
--> USBX device found: USBX@0
Created the following file:
USBMap.kext
Copy automatically to booted EFI? (y/n):
- Confirm to install
USBMap.kext
automatically. - Press
Q
toQuit
command. - Reboot computer.
Verify configuration by inserting USB 2.0
and USB 3.0
and USB-C
devices just like during detecting procedure. Also, close the lid and turn over notebook. After 20-60sec, depending on the current load, fans should stop rotating. Wait for another 3-5min. They shouldn’t start spinning again. If they start and stop after 10-20sec, you have done something wrong and need to start the procedure again.
Useful information
- USBMap
- A Beginner’s Guide to Creating a Custom USB SSDT
- Creating a Custom SSDT for USBInjectAll.kext
iCloud. iMessages and FaceTime
Follow the instruction in the article An iDiot’s Guide To iMessage.
Useful information
FileVault
This step is optional, but highly recommended from the security standpoint.
- Make sure you have full TimeMachine or clone backup. Some mistakes done during this procedure can make your drive and the data inaccessible!
- Make sure you have prepared macOS installation media in the worst case scenario.
- Do recommend to use
- Apple TimeMachine backup or
- SuperDuper
- Make sure the required
drivers
are installed.AptioInputFix-64
for Bluetooth keyboard and mouse.AppleKeyAggregator-64
for PS/2 keyboard and mouse.
- Make sure the
Preboot
volume is not hidden inClover Configurator
.- Open
/Volumes/EFI/EFI/CLOVER/config.plist
withClover configurator
application. - Open
Gui
section. - Remove
Preboot
volume fromHide Volume
in the top right corner. - Hit
Command+S
to save configuration.
- Open
- Open
System Preferences…
andSecurity & Privacy
andFileVault
tab.- Click lock to unlock
System Preferences
. - Click
Turn On FileVault…
. - It will take time… Depending on the drive size and a number of files, this can take up to 12h. So, be patient.
- Click lock to unlock
- Reboot computer.
- At the
Clover
screen, make sure you select theFileVault
Preboot
option of NVMe drive. - Login prompt should appear.
- Keyboard should work without any issues.
- If keyboard does not work, maybe, additional drivers are required. Boot from macOS USB installation media and fix
Clover
boot configuration. - Enter credentials.
- macOS should continue to boot.
Useful information
Power Management
BIOS tweak
- Reboot computer.
- Repeatedly press
DEL
key to enter BIOS configuration menu. - In BIOS navigate to menu
Advanced
Power & Performance
- Enable
Intel(R) Speed Shift Technology
CPU - Power Management Control
- Enable
Intel(R) SpeedStep(tm)
- Enable
Intel(R) Speed Shift Technology
- Enable
CPU Lock Configuration
- Disable
CFG Lock
- Disable
Overclocking Lock
- Disable
Memory
- Set
Memory Profile
to the best for installed memory. Usually something likeXMP profile 1
.
- Set
Save and Exit
- Hit
Save Changes
- Hit
Save Changes and Reset
- Hit
CPUFriendDataProvider
- Login with the user with admin privileges: usually, the first one created during the installation procedure.
- Download One Key CPUFriend Github repository ZIP archive.
- Unpack downloaded ZIP archive.
- Run
Terminal
application. - Change folder in
Terminal
application to unpack ZIP archive folder with command like this:
cd ~/Download/one-key-cpufriend-master
- In
Terminal
applications window, type the execute command:
./one-key-cpufriend.sh
- Command will show something like this:
-----------------------------------------
|****** Choose Low Frequency Mode ******|
-----------------------------------------
(1) Remain the same (1200/1300mhz)
(2) 800mhz
(3) Customize
Which option you want to choose? (1/2/3)
- For most cases, option
2
will be optimal. Type2
and pressEnter
. - Command will show something like this:
----------------------------------------
| Choose Energy Performance Preference |
----------------------------------------
(1) Max Power Saving
(2) Balance Power (Default)
(3) Balance performance
(4) Performance
Which mode is your favourite? (1/2/3/4)
- Option
2
is recommended for most cases. - Type your option and press
Enter
- Command will ask for password. Type your password and press
Enter
. - Command will generate two customised macOS Extensions (kext’s) on
Desktop
folder. - Run
KextBeast.pkg
application. - Click
Continue
and clickAgree
. - Select
/Library/Extensions
and clickContinue
. - Click
Install
. - If extensions are installed without any issues, run
Terminal
application from/Applications/Utilities
folder. - In
Terminal
application window, type:
sudo kextcache -i /
- And press
Enter
. - When command
kextcache
finish the execution unmount, detach the macOS USB installation media and reboot computer to apply new configuration. - Reboot computer.
- With next boot macOS will enable granular and precise power management.
Useful information
- Skylake HWP Enable
- HWP(Intel Speed Shift) enable with full power management
- XiaoMi-Pro CPU Power management
Undervolting
There are several tools for Windows for undervolting and overclocking CPU and GPU. Just like:
With macOS, it is a different story. There are a few tools for macOS for undervolting, but they require additional macOS Extensions (kext’s). Often, they are not free or not very well supported.
So, I decided to go Rogue and do undervolt with BIOS. Tools like XTU
provide better control, but I need a solution that will work both in Windows and Debian Linux and macOS.
AMI BIOS provides a lot of different tools for undervolting and overclocking.
The most interesting and easy to use are:
Processor
Core Voltage Offset
GT
GT Voltage Offset
GTU Voltage Offset
Uncore
Uncore Voltage Offset
To apply configuration:
- Reboot computer.
- Repeatedly press
DEL
key to enter BIOS configuration menu. - In BIOS navigate to menu
Advanced
Processor
- Set
Core Voltage Offset
to 100. - Set
Offset Prefix
to-
(!).
- Set
GT
- Set
GT Voltage Offset
to 100. - Set
Offset Prefix
to-
(!). - Set
GTU Voltage Offset
to 100. - Set
Offset Prefix
to-
(!).
- Set
Uncore
- Set
Uncore Voltage Offset
to 60. - Set
Offset Prefix
to-
(!).
- Set
Memory
- Set
Memory Profile
to the best for installed memory. Usually something likeXMP profile 1
.
- Set
Save and Exit
- Hit
Save Changes
- Hit
Save Changes and Reset
- Hit
- Boot in macOS or Windows.
- Download Prime95 application.
- Run
Torture Test...
fromOptions
menu for at least 1h. - If the system works stably, repeat all the steps and incremental increase undervolting for -5. It is better to keep undervolting for
Processor
andGT/GTU
on the same level. Repeat againTorture Test...
. If the system is unstable underTorture Test...
, freezes or reboots, revert back to the previous working configuration.
| Option | Configuration start undervolting | Recommended step | My stable working configuration |
|---|---|---|---|
Processor Core Voltage Offset |
-100 | -5 | -140 |
GT Core Voltage Offset |
-100 | -5 | -140 |
GTU Core Voltage Offset |
-100 | -5 | -140 |
Uncore Voltage Offset |
-60 | -5 | -120 |
CPU limitations can be very different even in same series. So, do not use my configuration blindly.
BIOS has many additional configurations for undervolting and overclocking, just like TDP (Thermal Design Power), but this requires extensive knowledge in CPU/Chipset/etc. and power management. This is not a part of this documentation. For more information, check the links provided at the end of the document.
Note: It looks like the mid 2019 Razer Blade Advanced has been undervolted from factory! But there are still room for improvement.
Useful information
- Razer Blade 2017 Ultimate CPU GPU Optimization - Unleashed Performance - BIOS Unlock
- Razer Blade 2018 Thermal Testing - Overclocking and Undervolting
- Razer blade 15 undervolting with ThrottleStop
- Intel Extreme Tuning Utility (XTU) Undervolting Guide
Nvidia BIOS flashing
Razer Blade Advanced mid 2019 has very few changes in comparison to the previous early 2019 model.
- Better screen refresh rate.
- Can be packed with i7 9750H CPU for extra money.
The biggest disadvantage is 80w 2080 Max-Q instead of 90w in the previous model. This is a huge difference for general performance. Check article Comparison: 80w vs 90w RTX 2080 Max-Q.
- Reboot computer.
- Select Windows 10 partition in
Clover
. - Download this repository ZIP archive.
- Unpack archive.
- Backup Nvidia BIOS with
GPU-Z
application fromTools\Nvidia\
repository folder (!). - Open
cmd.exe
with admin privileges. - In
cmd.exe
window change folder toBIOS_mod\Nvidia_2080_Max-Q_BIOS_mod\
repository folder. - To apply 90w TDP type in
cmd.exe
window command
nvflash64.exe -6 Nvidia_2080_Max-Q_90w.rom
- And press
Enter
. - Press
Y
for the warning(s). - Reboot computer.
Useful information
- Razer Blade Pro 17 (2019) Review
- Comparison: 80w vs 90w RTX 2080 Max-Q
- So much better than before: Razer Blade Pro 17 Laptop Review
- Razer Blade Advanced OLED 80w 2080 Max-q
- Razer RTX 2080 8 GB BIOS
Razer Chroma
Razer Chroma support for Razer Blade notebooks and the latest Razer devices has not been implemented for macOS yet. I suppose, it will never be implemented.
Thanks to osx-razer-blade project, I’ve already had enough information, so I am working on cli tool to control Razer Blade keyboard and logo Chroma lighting.
Windows
NVMe partition
- Open
Disk Utility
- Select
Show All Devices
fromView
menu. - Select the NVMe drive on left pane.
- Click
Partition
button at the top toolbar. - Click continue with partition.
- Add a new partition by clicking the
[+]
button under the circle. - Give it a name and desired size (minimum 50Gb required for Windows 10).
- Set drive format to
ExFat
. - Click
Apply
.
Windows installation media preparation
- Download Windows 10 ISO image.
- Open Download Windows 10 Disc Image (ISO File) URL in Safari. It better to download ISO image on macOS. Microsoft detects OS and prevent download ISO image on Windows machine. It can be override by browser
User-Agent
replacement but still easier todo this on macOS. - From
Select Edition
menu selectWindows 10 May 2019 Update
(!).Windows 10 October 2019 Update
ISO image have issues Microsoft still have not fixed.
- Click
Confirm
.
- From
Select the product language
menu select preferred language.
- Click
Confirm
.
- Click
64-bit Download
button.
- Download UNetbootin tool.
- Plug a USB media into Mac.
- Open
Disk Utility
. - Select the USB media from the left panel and click on
Info
button. Write down the device name. - Run
UNetbootin
- Select the
Diskimage
radio button, click…
to select a Windows 10 ISO image.
- Choose
Type
as the USB media and select the device name of USB media.
- Click
OK
to start burning to the USB media.
Useful information
Windows installation
- Insert Windows 10 USB installation media.
- Reboot the computer.
- Press repeatedly
F12
until youBoot Menu
will show. - Select the USB installation media with Windows 10.
- Follow the usual Windows 10 installation procedure.
Note: Be careful and select right partition created before for Windows 10. Otherwise, you can destroy the macOS installation.
Useful information
Clover Boot fix
To fix dual-booting hackintosh, rename bootmgfw.efi to bootmgfw-orig.efi causing Clover to become unblocked. Add the tag -orig
to the name so that it’s still a recognizable file and is shown in the Windows EFI partition for booting in the Clover Boot
loader menu.
To rename bootmgfw.efi
- Boot off macOS installation media.
- Boot macOS.
- Open
Clover Configurator
application. - Select
Mount EFI
on the left column. - Click
Mount Partition
for the drive where macOS and Windows is installed on. - Click
Open Partition
. - Navigate to
EFI/Microsoft/Boot/
. - Rename
bootmgfw.efi
tobootmgfw-orig.efi
. - Restart.
- UEFI OS (drive_name) should be an available boot device.
(Optional) Override Windows Boot Manager
If for some reason the UEFI OS (drive_name) isn’t shown as an available boot device, there is a way to override Windows Boot Manager
and have it redirected to Clover
.
- Boot off macOS installation media.
- Boot macOS.
- Open
Clover Configurator
application. - Select
Mount EFI
on left column. - Click
Mount Partition
for the drive where macOS and Windows is installed on. - Click
Open Partition
. - Open the
EFI
partition and navigate toEFI/BOOT/
- Copy
BOOTX64.efi
. - Navigate to
EFI/Windows/Boot
. - Paste
BOOTX64.efi
. - Rename
BOOTX64.efi
tobootmgfw.efi
. - Restart.
- Now
Windows Boot Manager
will redirects toClover
instead of booting Windows.
Note: Very often, with cumulative and security updates Windows 10 will place new bootmgfw.efi
in EFI/Microsoft/Boot/
. You can notice this by two Windows boot options in Clover
boot screen. Just remove old bootmgfw-orig.efi
and rename new bootmgfw.efi
to bootmgfw-orig.efi
.
Useful information
Hackintosh Dual Boot Windows 10 and macOS High Sierra
Known Issues and Limitations
Limitations
- Nvidia Web Drivers are not available for macOS 10.14 Mojave. Nvidia does not want to implement support for Apple 2D/3D rendering framework Metal and does not want to share access for Nvidia drivers source code for Apple. So, currently no support for Nvidia GPU for macOS 10.14 Mojave is available. It’s not a problem for me because I’m using Windows 10 partition for gaming and Debian Linux partition to run the ML tasks overnight.
- HDMI and DisplayPort ports both are connected directly to Nvidia GPU and will not work in macOS 10.14 Mojave.
- USB-C to HDMI should work without any issues.
- Windows Hello camera is not supported in macOS.
- Not all sensors are supported by VirtualSMC.
Issues
- Sometimes, the screen does not wake up when you open the lid after the computer was in a sleep mode. You need to close and open the lid again. This issue has appeared after the latest BIOS update. Although annoying, it is not that important.
Conclusion
It’s a pretty good laptop with a way better keyboard than 2016-2019y MacBook Pro. It is a solid workstation and an extremely good gaming machine. It has easy to upgrade NVMe and RAM and WiFi modules. This Model supports NVMe up to 2Tb and RAM up to 64Gb.
Major disadvantages are:
- PC trackpads still cannot match with MacBook Pro. This one is good. It is much better than most PC notebooks have, but still not even close to MacBook Pro.
- The screen is rather mediocre in comparison to MacBook Pro. 144Hz is good for gaming. If you are working with text a lot just like me, maybe, it will be better to get 4K panel. For content creators, it is mandatory to get the 4K panel.
P.S. Apple, please fix the keyboard and release a real Pro MacBook. Just take a look on Razer Blade Advanced as that is a good place for starting to design a new MacBook Pro.
Additional Information
- An iDiot’s Guide To Lilu and its Plug-ins
- Razer Blade Advanced (2019) trackpad issue
- Razer Blade 15 (2018) Detailed Install Guide High Sierra 10.13.6 (17G2208-17G5019)
- Razer Blade 2017
- UniBeast: Install macOS Mojave on Any Supported Intel-based PC
- Keeping your Hackintosh up-to-date, my method
- Hackintosh Mojave 10.14.5 Update Guide
- corpnewt/Hackintosh-Guide
- Anti-Hackintosh Buyers Guide
- INVENTORY OF SUPPORTED/UNSUPPORTED WIRELESS CARDS #2, SIERRA -> CATALINA
Community
Credits
- Apple for macOS. It is still the best OS
- netkas for the original idea of creating a software SMC emulator
- RehabMan for Laptop-DSDT-Patch, OS-X-Clover-Laptop-Config, OS-X-MaciASL-patchmatic, and more.
- Acidanthera for VirtualSMC
- Alexandre Daoud for VoodooI2C
- Ben Raz for help with VoodooI2C and trackpad
- Bat.bat for help with VoodooI2C and trackpad
- Steve Zheng for one-key-cpufriend
- vettz500 for the incredibly useful information about RBA 2018
- Kishor Prins and Boo for osx-razer-blade
- Additional big thanks go to all the contributors and researchers involved in Hackintosh development!
TODO
- Add BIOS pre and post update procedure


Russian, Turkish Military Start 4th Joint Patrol in Syria's North - Russian Ministry
MOSCOW (Sputnik) - The Russian military police and the Turkish border service have started their fourth joint patrol in a new area in Syria's north, at the border with Turkey, and the route will make around 80 kilometers (49 miles), the Russian Defence Ministry said on Monday.
"The fourth joint patrol of the Russian military police and the Turkish border service started on November 11 its operation in a new border region, located 70 kilometers to the west of the Qamishliya settlement," the Russian Defence Ministry said in a statement.
The patrol will first head westward and then eastward along the border, and the military will cross around 80 kilometers, the ministry added.
Around 50 servicemen, driving armored vehicles, are taking part in the operation, supervised by Russia's Orlan-10 drone.
Following talks between Russian President Vladimir Putin and his Turkish counterpart, Recep Tayyip Erdogan, on 22 October, a joint memorandum was signed in Russia's Sochi that stipulated conditions for the peaceful withdrawal of Kurdish militia in Syria, who were ordered to retreat 30 kilometers (18.6 miles) from the Turkish border.
The 10-point document also lays out a variety of patrol missions that are to be carried out by the Russian military contingent, Syrian border guards and Turkish troops in order to ensure the deal's implementation.